2009年12月28日月曜日

影響受けた映画

遅ればせながら「GO」という映画を見ました。


見ての通り、窪塚洋介主演の映画です。なんか、私は窪塚くんの映画が大好きです。すごい少年チックで無邪気なんだけどカッコいいところに同性ながら憧れるところがあります。ピンポンとかランドリーとかIWGPとかもう見飽きるくらい見ました。GOは今回がはじめてです。

内容は在日朝鮮人の主人公(窪塚)が朝鮮人の友人や家族そして、日本人の女性と関わっていきて行く様です。人類皆平等とはよくいいます。確かに日本でもそして、他国でも人種によって出身国によって不当に扱われ、差別されるといったことは法的に禁止され、私たち国民も当然そのように教育され生活しています。しかし、差別・偏見というものはどうしてもぬぐいきれないものです。在日朝鮮人の問題にしてもそう。日本人は深層心理の奥の方ではどうしても在日朝鮮人のことを差別し恐れ避けている。私も実際そうだと思う。

この作品はこのような問題を朝鮮人の立場からリアルに表現している。
中学生から高校生にかけて一番多感なころのひとりの、少年が差別偏見を受けながらグレながらもしっかりと成長する様を描いている。少年は中学は民族学校で朝鮮人の中で暮らし、高校は日本の高校に入学した。主人公の親父も当然在日朝鮮人なのだがその親父は息子の足枷(在日朝鮮人だというレッテル)を少しでも無くしてやろうと、不器用ではあるが息子に伝えようとする。主人公が日本の高校に入学するきっかけになったのはこのオヤジの影響だろう。当然日本の高校では普通に高校生活を送れるはずがない。差別を受けその影響もありグレてしまう。しかし、それでもしっかりと自分を保っている。
そんな時にひとりの女性と出会うのだが、そこからが主人公の差別との本当の戦いがはじまる。それまで主人公にとって差別なんてのは無視してればどうってことないこと(自分を保てればいい)だったのだが、恋をしてそれが変わった。差別されるということが怖くなったのだ。
そこから、少年の葛藤が始まる。
ここからが面白くなってくるところなのですが、細かく話していると長くなるのでこのあたりで締めます。

現代の派手なアクション映画とは一風変わった内容ですが私はこのような現実味のある映画はすきです。あたかも自分が主人公であるかのような雰囲気になってしまいます。

最後にひとつ、映画の冒頭で出ていたフレーズを・・・

”名前って何?バラと呼んでいる花を別の名前にしてみても美しい香りはそのまま・・・”

多分、この映画を見終わったらこの意味がよくわかると思います。

おしまい。

2009年12月27日日曜日

PS3購入!

ついに念願のPS3を購入することにしました。
当初は中古でもいいやと思いyahooオークションで入札を考えていたのですが、5000円以上の入札はプレミアム会員でないとダメらしく諦めました。
仕方なくいつもの如くamazonで購入しました。当然FF13も購入したのですが、FF13は北米版のやつを買うことにしました。なぜかというと、最近英語を勉強しようと密かに目論んでいるからです。単純にゲームをするだけだと時間の無駄に感じてしまうのですが、そのゲームが英語だとそれは学習になります。そして、ゲームとして英語を読むことは普通に英語の学習を行うよりも楽しく、長続きすると思われます。
しかし、少々思惑ははずれていました。なんと、FF13北米版はまだ発売されていないらしいのです。調べたところ発売日は2010年3月9日らしい。PS3は当然既に発売されているのでこれではハードだけあってソフトがないというなんとも悲しい事態になってしまう。急遽PS3購入をキャンセルしようとしたのだが、どうやら発送準備段階に入っているとかでキャンセルできなくなっていた。商品到着後返品もできるらしいのだがその場合返送代金はこっち持ちらしくおそらくPS3だと2000円位になるかと思う。それなら、いずれ買うものだし返送しない方がいい。




開き直って、これからなにか面白そうなソフトを探してみようかと思います。。

地デジ-DT-F100/U2(バッファロー)が正常に動作しない件について

先日ようやく発注していたバッファローのUSB型地デジチューナ(DT-F100/U2)が到着しました。
購入したときは9980円位だったのですが、出荷までに価格が9219円にまで値下がりしていたので、その価格で購入できました。ちょっと待ったかいがありました。
早速使ってみようとPCに、チューナーのドライバをインストールして地デジ閲覧用アプリケーションもインストールしたのですが、電波が受信できない様子。
一応、地デジ対応状況は確認して購入したので見ることは問題無いはずなので、問題は受信環境かと思い確認したのですが、ここ熊本市は2007年には既に地デジ対応しているらしいです。









 

ではいったい何なのか・・。
OSはWindows7Profesional、グラボはradion HD4350です。
グラボの影響は無いかと思ったのですが、一応HPで公開されていたドライバを入れなおしてみたり、VMwareやVirtualPC上のWindows7やXPのOSで試してみたりしましたがやはりだめ。

一応ドライバやソフトウェアのインストールに失敗したのかと何度か再インストールをやり直したり、再起動したりといろいろ手を尽くしては見ましたが状態は変わりません。インストール方法も説明書に記載されている通りにやってみたし、インターネットで紹介されている方法でも試してみた。

もう、本格的に原因がわかりません。来週職場のPCにインストールしてみてそれでもダメなら初期不良を疑うしか無いかと思っています。

俺的にはバッファローは信頼できるとハズなんですが、、、うううう~~~~。

2009年12月26日土曜日

お付き合い

今日アパートにかえって日課のDVDを見ていたところ、社長から電話がありました。
大体8時くらいでした・・・。このくらいにかかってくる電話は大体ろくな電話ではありません。今回もそうでした。

社長「いま、xxさんといるんだけどこれから時間ある?」(xxさんとは大使館の方で最近社長と親しくしているようです)
私「あ、はい。ありますよ。」(ここでないというべきだった)
社長「あ、そう。じゃ、これから食事でもどう?いつものところで」
私「あ、はい。わかりました。いいですよ。」
社長「じゃあね、あと30分くらいでつくから予約しといて。他のメンバーも連絡してみといて」
私「わかりました・・・」

と、こんな流れ。。
時間があるといった手前、社長からの誘いを断るわけにもいかず受けてしまいました。
他のメンバー(同じ職場の人間2人)に連絡したところ、やはりというか当然というか断られました。
とりあえず、お店には予約をいれ自分だけで向かうことにしました。

到着したのは30分後より少しはやかったのですが既に社長とxxさんは一杯やっていました。
私とxxさんは初見だった為、とりあえず挨拶と名刺を頂きました。私は名刺を職場に置いていたため渡せませんでした。

とりあえず、私の役割は場を盛り上げること社長やxxさんの話に乗ったり相槌をうったり・・・。以前の会社ではこのような重役同士の飲みの話に居合わせるようなこともなかったのですが、今の会社は比較的小さい会社なので社長なんかと飲みに行くのはしょっちゅうです。もともと社長が面倒見のよい社長だし。
私は、あまりこういった場は好きではないのですが一通り差し当たりのないよう話をあわせて話しましたww。そうこう言っていると、社長が他のやつも呼ぼうか?といいだし、近くの人に電話をかけだしました。数人に電話をしていましたが被害者になったのは私より一つ年下の東北大の人です。(他の人には断られたようです)ちなみにその人とはあまり話したことはなかったのですが、一つ思っていたのは非常に私の大学時代の先輩に似ていると思っていました。その先輩は俺の3つ程上の法学部の人間で非常に礼儀正しく堅苦しい人でした。今回きたその方も一緒で、社長との話でもそうだし、私と話すときも社長と話すときと同じように話をします。私は年は1つ上ですが入社1年目のぺーぺーです。かたやその東北大の方は入社3年目らしく会社では俺より先輩に当たります。ホントは私が敬語を使うべきところなんですがね。
その方は飲みの最中、終始「今は、熊本○○さんの方で○○のお仕事をさせていただいております。」こんな感じでした。仕事ならまだしも、飲みなんだしもっとナチュラルな感じでいいとおもう。私の場合は仕事でもあれほど丁寧な言葉はつかいませんがww。
その方がこられていじられ役が私からその方にチェンジしました。 ふ~~~。助かったw

それから、大分飲み食いして結局終わったのは11時過ぎたころでした。もう、食い過ぎたくらいくったので眠くなってきてました。社長やxxさんは大分お酒も入っていたのですが、xxさんはどうやら車に乗って帰るような雰囲気でした。本人は妻の迎えが来るとか言っていたのですが、飲んでいる最中電話している様子も無く帰り際も少々不自然なところがあり、私も社長も乗って帰るつもりなんじゃないかと思ってました。結局詮索するのはまずいと思い、深く聞くことはしませんでしたが・・・
大丈夫だったかな??

今回の飲みはまあ、なんとかなった感じ(自分は飲みを楽しむのではなく楽しませる役なんで)ですが、後から参加した方はかなり悲惨だったかなという印象でした。。
明日は我が身、のみの時は気を付けねば。

2009年12月23日水曜日

忘年会

今日は熊本出向組で忘年会でした。
全員で13人の比較的大人数での忘年会となりました。
初めて顔を合わせるメンバーも数人いていい機会だったかと思います。

料理は中華で飲み放題食い放題でした。講師チーム(俺たち)4人は時間通りに到着したのですが、開発チームの9人は仕事が長引いたのか到着が遅れ、結局開始は1時間ほど遅れた20時からでした。何かあったら連絡よこせって言ってたのにこっちから連絡するまで遅れるの連絡一本よこしませんでした・・・。まったく・・・。結局全員前に3皿くらい料理を平らげてしまいました。

皆が到着したら全員自己紹介を行いました。他の人の話を聞いていると自分も面白い自己紹介をしようとしたのですが、どうやら滑ってしまったみたいです。

料理は結構よかったかな。一つ勉強になったのはバンバンジーは棒棒鶏と書くということです。みんなのまえで「ぼうぼうどり」といってしまいちょっと恥ずかしい思いをしてしまいました。

2次会はカラオケでした。いつもの講師チームで行く時の2次会は何故かパチンコだったのでとりあえずは安心でした。といっても、カラオケはうまくないのであまり行きたくはなかったのですがw
とりあえず、俺のうたえそうな曲だけセレクトして歌いました。俺は高音がでないので高音がでる人は羨ましいです。発声練習とかしたらでるようになるのかな??知っている人いたら教えてください。

ではでは

2009年12月22日火曜日

応用情報処理

最近、私は仕事がらIT関係の資格を受けています。
入社後LPIC試験と応用情報の試験を受けました。これは会社が受験料を出してくれています。アリガタヤアリガタヤ。ちなみにLPIC試験とはLinux技術者の試験であり、応用情報はIT全般についての知識を問う試験です。LPIC試験はなんとか合格したのですが、応用情報の方はまだ結果待ちの状態でした。そして、なんと今日が合格発表日でした。
すぐにでも結果を知りたいと思っていたのですが、職場に受験票を持っていくのを忘れており受験番号が確認できなかったので日中に合否はわかりませんでした・・・はがゆい。ちなみに自己採点の結果は午前試験が75点程、午後が62点程でした。両方共6割以上で合格なので午後の62点というのはかなりきわどいなと思っておりきがきでありませんでした。

帰宅後早速PCをつけ受験票を引っ張り出し、IPAにアクセスして確認しました。受験番号意外にもパスワードが必要みたいです。いつ作ったパスワードだろうかと考えていたら受験票にかいてありましたw

そして、確認。。。。。。。


キタ━━━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(  )━(゚  )━(∀゚ )━(゚∀゚)━━━!!
キタ━(゚∀゚)━┥東│東│東│  │  │  │発│発│発│中│中│中│北┝┥北┝━(゚∀゚)━!!!!

合格でした。えがったえがった。しかも、意外と午後が取れている。。。w
午後は記述式だったのですが、意外と部分点が多かったのかもしれません。
これは、かなり嬉しかったです。単純に合格した嬉しさもありますが、うちの会社は資格手当も支給されており応用情報だと月(基本給)+6000円もらえます。グヘヘ・・・

月6000円ということは1年で7万。7万あればPS3を2台かってもお釣りがきます。
さて、自分へのご褒美なににしようかな??(PS3かな??)

2009年12月21日月曜日

HPお引越し

先日も書きましたが、私はこれまでロリポブログでHP公開していたのですが、Bloggerに変更する事になりました。ロリポからは”契約終了の警告”メールがしきりに送られて来ています。どうやら、12月23日で契約期間終了のようです。もう、2日しかありませんww
 とりあえず、UPしていたXoopseのデータやMySQLのDumpは引き上げたのですが、いまのうちに引っ越し作業をしておくのが無難かと思い日記をBloggerに移動させました。移動させたと言ってもexportで吐いて取り込むのではなく、いちいち手作業です。ロリポのソース開いては必要部分を切り取って貼付け、切り取っては貼付けの繰り返し。今思えばなんか、データダンプ機能とかありそうなもんだったんですが、気づきませんでした。数も少なかったのでなんとか2時間程で完了したのですが、面倒だったのが CSSの指定とタグのhtmlのサニタイジングです。比較的表やコードを記述している部分が多かったので結構大変でした。これも作業が終わって発見したのですが、とあるHPではコードをタニタイジングするWEBサービスを提供しているところもありました。正直簡単にできそうなこのサービスなのですが、このようなサービスを作成しようという発想が面白いです。確かに便利です。
ちなみに私はロリポのWebページからfirebugでソースを抜き取って貼りつけていきタグを一個一個変換してゆきました・・・・。後で気づいたのですが、エディタなんかに貼りつけて置換すれば良かった。
さっきから後で気づくことおおすぎです_| ̄|○
とにかく、なんとか終わったので良しとします。

おしまい。

2009年12月20日日曜日

物欲について

私はモノにこだわる方ではないです。例えば、カッコいい車が欲しいとか、いい服・靴を欲しいともあまり思いません。ただ、こと電化製品ことPCや携帯なんかはこだわるところがあります。もちろん、上を見たらキリがないのである程度妥協はしますが、値段とスペックの兼ね合いを考えて選んでいます。
パソコンの方は今年に入って2台買いました。

1台はノートで14万程しました。スペック重視で買ったのですが、今考えるとスペックに比べて高い買い物でした。 デスクトップも買ったのですがコチラの方はパーツ単位で購入した自作PCです。OSはWin7ProのDSP版、マザボはASUSのp7p55d、CPUはi7の860、メモリ4G、その他ケース(p183)、電源(900w,80plusシルバー)も買いました。以上のパーツで11万程でした。他のパーツ(HDD,DVD,ディスプレイなど)は以前使っていたものを流用したのでなんとか11万で収まったのですが、すべて購入という形だと20万程になっていたと思います。

自作して思ったのですが、やはり通常PCを購入するのであれば既製品として購入するのが効率的です。パーツ単位でちょびちょび買っているとその間のマージンの占める割合や送料の割合も高くなります。私の場合昔使っていたPCのパーツが使いまわせそうだったのでスペックの割に安くできたのかと思いますが、自作するのであれば、”すでにPCを持っている”・”高くついても自分好みのPCを作りたい”という条件で行うべきです。

そんな私が今度狙っているのは地デジチューナです。狙っているというか既にamazonで発注は欠けているのですが、、まだ発送されていません。最近バッファローでUSBタイプの地デジチューナが発売されました。DT-F100/U2ってやつです。これまでの地デジチューナは設置型で持ち運びには適していませんでしたが今回のDT-F100/U2は小型で持ち運びもでき価格も1万ほどと安価なものです。
早く発送してもらいたいところですが、在庫切れなのかまだ発送されていません。amazonは商品到着までの時間と値段・手軽さについては問題ないのですが、在庫切れの際の対応が悪いところがあります。これまで、2度在庫切れで発注がキャンセルになったことがあるのですが、発注してから1ヶ月ほど「商品発送まで時間がかかります。しばらくお待ちください。」といった案内が続き、その後いきなり「在庫が確保出来そうにありませんので、キャンセルさせていただきます・・・」といった案内メールでいきなり発注がキャンセルされてしまいます。1ヶ月まてと言われて待った挙句にいきなり在庫が無いから強制的にキャンセルって配慮無さすぎな感じがします。
今回もこのパターンの感じがプンプンします。。。

ちべたい

最近寒くなってきて風呂に入るのが億劫になってきました。
昨日もめんどうで結局入らなかったので今日は朝風呂にしました。
大体、風呂はシャワーで済ませるのですが、今回は少々大変でした。
うちのアパートでは電気温水器でお湯を沸かして利用しているのですが、たまにこれが調子が悪くなるのです。今回もそれでした。シャワーを浴び始めた当初はちゃんとお湯が出ていたのですが、体を洗った後になってお湯が出なくなってしまいました。
5分ほどお湯がでるのを待っていましたが、結局冷たい水のまま石鹸を落としました。凍りつきそうなくらい冷たい水です、ガクガク震えながら耐えました。

ううう、管理会社に連絡しようかな???

2009年12月19日土曜日

今日は休みっす

今の職場は1週間おきに(奇数の週)土曜日は出社することになっています。本来今日も出社すべきなのですが、今日は特にやることも無いので休みをもらいました。
私の休日の過ごし方はもっぱら家に引きこもりです。大体インターネットやPCをいじったり、寝たりして過ごしています。今日も10時頃に起きて早速PCの電源を入れました。

まずやったのが、うざかったLiveMailの自動起動設定の解除です。それ自体はmsconfigから簡単に解除できるのですが、他にどんな機能があるのか調べていたら面白いのを見つけました。


ここから、システムツールの起動ができ、下のほうに起動コマンドも表示される。いちいちすべてのコマンドを覚えてなんかいられないという時には大変重宝しそうだ。このツールの中にはウィンドウ操作で表示できないようなツールも含まれている。中でも気に入ったのが”システム情報ツール”だ。


ここでは、現在使用しているシステム情報を表示してくれる。しかも、かなり詳細に多項目にわたり表示しているのでこれは多用しそうな感じがする。

おしまい。

2009年12月18日金曜日

帰省するよ

年末年始も近づいてまいりました。
年末年始は仕事もないので久しぶりに実家に帰ろうかと思っています。
現在私は熊本に住んでいます。実家の宮崎は比較的近い感じがしますが交通の便が悪く結構時間がかかります。宮崎は陸の孤島とはよく言われますが、電車は鹿児島経由でないとありませんし、高速も鹿児島経由でかなり遠回りしてのルートしかありません。案外近そうで時間がかかります・・・。
ただし、高速が一部開通している分島根よりはずっとましですね。島根はほんとに隔離されている感があります。 県内に高速はありませんし松江市から隣県の広島(3時間)・鳥取(2時間)・山口(5時間)にいくにもかなり時間がかかり遠回りしないといけません。広島に電車で行くには一旦米子・岡山を経由するというワケの分からない状況です。
まあ、そういった状況を知っているのでまだまだ、宮崎は恵まれていると感じてはいます・・。

実家の宮崎に帰るにはいつもはバスで帰っています。片道4500円の往復割引で8100円で、時間は約3時間弱かかります。時間は別に気にしない(本来寝る時間を削ってバスで寝てればいいので)のですが、帰省にお金をかけるということに私は疑問を感じるのです。「特に、帰ってもやることはない」「帰省費を別の用途に使うともっと有意義だ」「実家に帰っても何かとめんどくさいだけだ」といった感じ。。
おそらく皆感じているのではないかと思うのだが、、

私は、自分を理系の人間だと強く感じる。理系の人間とは物事を論理的に考え、文系の人間は抽象的な概念で捉える傾向がある、と私は感じている。私の場合とくに物事を論理的に考えようとするところがある。そして、論理的に説明のつかない事象については自分の手に負えないものとする。これは、長所でもあり、短所でもある。つまり物事を論理的に考えるということ自体は物事の本質を理解するという上で良いことであるが、論理的に説明のできない事象で出くわした場合に対処できない。物事を柔軟な概念として捉えることができないのである。
私はまさにそれだ。実家に帰るにしても何らかの合理的な理由が無いのではその意義を感じない、意義が無いのでは帰省するのに意味もなく、そんなものにお金を使うことはナンセンスということになる。それよりも、その金で念願の地デジチューナーを買ったほうが100倍ましだ。
そんな私が、なんで実家に帰るのかというと親がうるさいからだ。。
それでもしばらく家に帰らないと母が情緒不安定(鬱??)っぽくなってしまう。突然泣き出すとか、寝込んだり・・・。親離れできない子が増えているという話はよく聞く話だが、私の場合はその逆だ。

そんなわけで、ゴールデンウィークとか年末年始は帰るようにしています。それに、全く実家に帰る目的が無いわけじゃなく、久々に友達にあってみたいしね。

2009年12月17日木曜日

携帯メールの設定があああああああ

今日友人をメールをしていたら、いつの間にかメール送信元のユーザーはどうやって設定するのかという話しなりました。その友人はPCはもっていないので携帯のメールの設定方法を教えてあげたのですが、その際に自分の携帯の設定を確認したところメールヘッダのReply-toに○@much○○○○○.comというワケの分からないメールアドレスが登録されていることに気づきました。自分では当然そんな設定するワケはないのですが、一応どのようなメールなのかgmailから空メをおくってみると。。。。



こんなメールが帰ってきました・・・・・悪質だ。
俺はなんて設定にしてたんだ!!これじゃ完全に迷惑メールだ。受信した人は俺が業者の回し者か何かと思っていたかもしれない。まさに踏み台にされた感じ。
これまで、俺がメールをしていた人はどう感じていたのか、そしてどうやって返信してたのか不思議だw
とりあえず、(*_ _)人ゴメンナサイ。

今思えば、以前に俺のメールがちょっと変だと指摘を受けたことがあった。
その時は特に気にせず、相手の気のせいだと思っていたのだがどうやらこれが原因のようだ。
そもそも、なんでこんな設定になっているのか調べてみたらどうやらこれはツタヤ関連のサイトの会員登録メールのようだ。そういえばツ○ヤの店員にツ○ヤ会員になるときに一時携帯を渡した記憶がある。まず間違いなくその時に設定されている。
マチガイナイ!!

くそ~~ツ○ヤめ・・・・。

<今回の教訓 >
 知らない人には携帯を貸すな!!


FF13ほちい

今日は待ちに待ったFF13の発売日です。
といっても、私はPS3をもっていないので指を喰わえてるだけです・・・(つд⊂)エーン
私は自称生粋のFFファンです。子供の頃、高校までは親が断固ゲームは買わないという主義だったので殆どゲームをすることはなかったのですが、大学に入ってから一人暮らしを始めるとこれまでの反動なのか早速PS2を買いゲーム三昧の日々を過ごしていました。そのゲーム三昧の日々で特に遊んだゲームがFFシリーズです。特にFF10は私が購入した最初のソフトでもありかなりやり尽くしました。
FF10はそのストーリーやサブストーリーの多さもさることながら動画の綺麗さに感動しました。それが、FFの売りなのでしょうが、当時の私にはすごい衝撃でした。ラスボスを倒しても最強を目指しスフィア盤を最強スフィアで埋め尽くすまでやり尽くした記憶があります。


それから、FFシリーズの旧作を買いあさってはやり尽くしました。FF7、8も大好きでした。
FF9と12もやりましたが、この2つに限っては期待はずれでした・・・w

そして、今日はFF13の発売日FF13を持ってない私には別に関係の無い話なのですが、やはり1FFファンとしては気になるニュースです。私のよく見るニュースサイト”GIGAZIN”でもこのFFネタは紙面を埋め尽くしていました。やはり、ゲーム業界を代表する期待作なだけに注目度も高いようです。FF13の売れ行きによってはPS3の隆盛を左右しかねない状況となっているようです。3ヶ月ほど前に発売された薄型PS3は従来のPS3の1万円安い29000円程、HDD容量も従来の80Gより40多い120Gです。製造原価が下がったとはいえそれでも29000円で販売した場合多少の赤は出ているとの調査もあります。その分、ソフトで挽回を図る必要があるわけで、Sonyの命運はこのFF13が握っているのかもしれません。前作のFF12には正直面白みを感じませんでした、学生時代よりゲーム離れしてたからかもしれませんが。。その分、FF13には期待してしまうのです。

ボーナスも出たしPS3とFF13買っちゃおうかな。

やぶへび

私の仕事はとある専門学校の講師です。講師と言っても本業はプログラマで講師として専門学校に派遣されている状態です。ですので、定期的に上司には現状を報告しています。
最近特に変わったことも無く殆ど連絡することもなくなっていたので、とりあえず冬休みの日程の連絡と”その期間は何かあったら引き受けますよ”と連絡しておいた。

すると、早速その上司から返信電話が・・・・

内容は、以前納品したソフトが調子悪くなったみたいだから見てきてという内容でした。ソフト名はオープンスクールっていうソフトで、メインディスプレイで表示されている画面を複数の端末のディスプレイに表示するソフトらしい。これまで、このソフトを全く触ったこともないので正直できるかどうか不安だが、なんだか面白そうなのでやってみたい気もする。以前はこのような仕事を任される事はなかったので正直嬉しく思う。ただ、責任も伴うので半々といったところか・・・。

まだ、少々時間があるのでそれまでオープンスクールの仕組みを理解しておこうとおもう。

同窓会

昨日忘年会ネタを書きましたが今度は同窓会のお誘いがありました。
小学校・中学校と同級の友達です。
こうやってたまに正月とかゴールデンウィークなんかにはよく同窓会をやっています。
以前私は島根で暮らしていたのでその頃はなかなか実家の宮崎に帰る機会もなくあまり参加していませんでしたが、前職をやめてからはよく参加しています。こうやって、久々に気の合う友達とあって酒を呑むのはやっぱり楽しみです。高校の頃の友達とはほとんど連絡を取ることもなくなり年に一度学年での同窓会の誘いがある程度です。こんなこともあり、僕にとっては小中の同級生は非常にありがたい存在です。この友人たちとくだらない話をして酒を呑むのが実家に変える楽しみの一つでもあります。

こんな私ですが、今回の同窓会は日程が悪く参加出来そうにありません・・・。仕事始めは4日からなのですが、この同窓会も見計らったかのように4日でしたΣ(゜口゜;

でも、年末年始は帰る予定なので他の日にでも友達を誘って飲みにでも以降と思います。

2009年12月16日水曜日

データ消滅!!

先日不良セクタが発生していてコピーし損なったDVDのISOイメージですが、いろいろと復旧しようと手を尽くしていたところ、、、データが消え去ってしまいました。Σ( ̄[] ̄;)!ホエー!!
特に間違って削除したとかいう記憶はないのですが、いつの間にか消えてました。。。
いろいろ手は尽くそうとしたのですが力及ばずでした。(結構あきらめはいい方です。DVD4つだけだったしねw)

仕方ないので、予てから予定していたXFSにフォーマットすることにしました。











SMARTツール(HD tune)

先日見つけたサイトでいい情報を入手した。
HDDの状態を表す指標であるSMART情報を簡単に見ることのできるソフトが有るらしい。

HD tune
http://www.hdtune.com/download.html














HDDは消耗品である。消耗品であるにも関わらずそのHDDの担う役割は大きく、万一HDDが故障してしまった場合大変な痛手を負うことになる。
もし、HDDの状態を把握できそのHDDのおおよその故障時期を知ることができればデータ管理やコストの面から見て大変助かる。これを可能にするものがSMARTツール:HDtuneである。
そもそも、SMARTとは”Self-Monitoring Analysis and Reporting Technology”の略で、ハードディスクに内蔵された自己診断機能。故障の兆候を予見してユーザに知らせることができる機能である。
知ることができる情報には、読み取りエラーの発生率や読み書き速度、モーターの起動・停止の通算回数、出荷以来の通算の通電時間、代替処理された不良セクタ(ペンディングセクタ)の数などである。HDDにはメーカーが定めた寿命がありこれがThresholdで記述された値であり、実際の値がDataの値になる。この両値が近くなると寿命が近いと判断できるのだ。
この、HDtuneはそのようなSMART情報を確認することもできるし、アクセス速度のベンチマーキングや不良セクタの確認等もできるようだ。 うん、便利!!


しかし、このThresholdはあくまでも目安で一般的にここで定められた値よりかなり低い値でHDDに障害が発生するらしい。

ちなみにこのSMART情報はIDEあるいはSATAで接続されたHDDでしか確認することはできないらしい。俺はNASのHDDを見たかったんだけど見るにはNASを解体する必要が出てくる。
また、暇なときにやろうと思う。

後で気づいたが、温度(temperature)の値がすごいことになってるCurrentが107でWorstが96。
気になってPC開けて触ってみたけど火傷しませんでした。一部値がおかしなことになるようです。気を付けましょうねw

2009年12月15日火曜日

不良セクタ復旧方法を調べていたら

(前回のつづき・・・)
HDDに不良セクタが見つかり、どうやらその不良セクタのせいでISOファイルが読み取りできなくなってしまっている。不良セクタを修復するのは無理にしても、なんとかISOファイルだけでも復元できないものか・・・といろいろしらべていたら、面白いサイトを見つけた。(大体俺は何かをやるときに寄り道しながら進んでいく。そして、結局何も解決しないww)

http://hddbancho.co.jp/index.html

ここでは、HDについての考察が書かれている。非常に興味深い話だ。ついつい読み込んでしまうw。これに大体2時間程。。

今日は之にて終了;;

ISOがコピーできない原因について

前回の続き・・・
仮にデータが壊れているとしてもその壊れたデータのコピーすらできないというのはおかしな話だ。
その後、USBHDDに保存してあるISOからデータが読み取れない原因をいろいろ調べていた。パーミッションやセッションやら。そんな時、ある気になるものが目に止まった。



そう、つまりHDが壊れてますよ。ってことみたい。。
なんとも悲しい結果です。
まあ、完全に逝く前に見つかって良かったです。

なんとか、不良セクタのデータを復旧できないか試してみようかと思います。

まあ、不良セクタがあるだけで完全に使えなくなったわけでもないし、最悪はフォーマットし直してバックアップディスクとして利用しようと思います。

HDお引越し

一昨日からUSBHDDのデータをNASに引越ししようと思い作業をしています。
なぜ、この引越をしようとしているのかというと、NASにUSBHDDを接続しそのUSBHDDをNASHDDとして読み書きするためです。
現在USBHDDのファイルシステムはNTFSなのですが、どうやらNASでオンラインストレージ化するとNTFSではreadしかできないようなのです。実際、NASにUSBHDDを接続したところreadしかできませんでした。それと、NASの自動バックアップ機能ではPC上のHDDは利用できないのでNAS上のHDD(NAS自体かUSBHDD)を利用する必要があるのですが、現在USBHDDはwriteができない状態なのでUSBのHDDはバックアップ用HDDとして利用できません。NAS自体のHDDを利用したのではNASにハードウェア的な故障が発生したときにバックアップごとやられてしまい意味がありません。そこで、USBを書き込み可能なファイルフォーマット(XFS、FAT32)に変更することにしました。FAT32ではDVDイメージ等3G以上のファイル書き込みに対応していないため、XFSにすることにしました。
フォーマットすると現在HDDに保存しているデータは消えてしまうため、一旦まだ余裕のあるNASの方へ移動することにしました。

現在USBが容量1Tでほとんど使い切っている状態、NASが容量2Tで600G程使用している状態です。つまり、1Tのデータを移動させる必要があります。

特に何も考えずUSBHDDの中身をすべてコピーしてNASの方にペーストしたところ残り時間が20時間と猛烈なことになってしまった。後で気づいたのだがPC側からコピーの指示をだすとUSBHDDからデータを読み取り、それをPCのメモリ上に一旦データをストックしてその後再度NASに送信するため手間がかかる。PCへのデータストックをしないようNASにSSHかなんかでリモートでコピー指示をだすとはやかったのではないかといまさらながら思った・・・。
結局コピーが終わったのはコピー開始後約30時間だった。。なぜ、そんなにかかったのかというと、途中で”コピーできません”エラーが4回も出てそのたびに手動スキップする必要があったので、その手動スキップを行うまでコピーが停止したままになっていたのだ。


とりあえず、ほとんどのデータは引越しが完了したがISOファイルの一部がコピーできずに残っている。今まで、削除できないとか書き込みできないとかは経験があったがコピーできないという経験は始めてである。ISOをマウントしたところ一応認識はするもののDVDの途中で再生が停止してしまう。
どうやら、データが壊れているようだ・・。

 
さて、修復できればいいけど。どうしたものか・・・

telnetの設定

今日telnetをやってみた。
telnetは本来セキュリティーで問題があるため利用しない方がいいのだが、勉強の為に行ってみた。
環境はXP。サーバ側の手順は以下の通り。

  1. ポートを開く。(TCP23番)
  2. telnetサービス起動(インストールされていない場合はインストールしてから)
    ※XPでは標準でインストール済、vista以上からで手動インストール要
  3. tlntadmnコマンドで設定の変更。
  4. ユーザー権限の確認。(adminならリモートログイン可能、一般ユーザーならリモート可能グループに所属させる。あるいはその権限をユーザーに与える)
  5. ログイン条件など修正のある場合は都度修正。
    例)「管理ツール」→「ローカルセキュリティポリシー」→「ローカルポリシー」→「セキュリティーオプション」→「ローカルアカウントの空のパスワード使用をコンソール・・・」で空passwordでログイン可能になる。

あとは、クライアントでtelnetを叩けばよい。
一番手こずったのはログイン時の空パスワードでログインできなかった時です。
当初、ユーザーに権限がないのかといろいろ調べたのですが解決せず、結局空パスワードを使っていたせいでした。

次は、WindowsでSSHを試してみようと思います。

東京出張・・・

本日東京出張の話がありました。
内容は12月25日に東京で教育手法についてのガイダンスや学生の内定率向上に向けたセミナーなんかが開催されるらしくそれに参加するかどうかでした。
以前は東京行ってみたいと思っていたのですが年のせいかな、最近ではメンドクサイというのが先行してしまいます。今回も、私はその話は断り別の方に行ってもらう事になりました。正直いろんなことを経験するという意味ではそういったセミナーやら東京の状況を知ることは勉強になるとは思うのですが・・・。

う~ん、めんどくさい。

忘年会

そろそろ忘年会の時期です。
そして先日その忘年会の幹事をすることになってしまいました。
まず、ホットペッパーで熊本市内の飲食店を探しました。
これまで、ネットで店を探すことはしていなかったんですが、ホットペッパーを見て予約を入れるとクーポンが使えるようになるらしく、一人当たり1000円位マイナスの金額になりました。

これはお得な感じ・・・!

しかも、会社から忘年会の経費補助もでるらしく、これが一人頭2500円。
これで、ほとんど個人負担は無くなりましたww
前の会社では経費なんてものはほとんど出ませんでした。まして、忘年会の経費なんて言語道断だったのですが、今の会社は社長が社員思いの方なのでその辺り恵まれてるなと感じます。

料理は中華で飲み食い放題です。私はフカヒレスープをガッツリ飲んでくる予定です。V

2009年12月14日月曜日

Flashどこに置こう・・

簡単にHPを作成できるという点で言えば、Bloggerは良いCMSだと思う。もちろん一般的なHPスペースにWordPressやXoopsなどのCMSをインストールすればBloggerより柔軟で簡単にHP作成できるんだろうけど、そういったWordPressなどのインストールは案外難しい。俺も一応プログラマーを名乗っているもののいろいろ設定してたら半日以上は時間がかかってしまった。無料でこれだけ簡単にHP作れればいいなと思っていたが如何ともし難い問題が発生した。

Flashなどのファイルの置き場所がないのだ・・・

以前はロリポでHP公開しててFTPでファイル管理できたんで比較的自由にHPを作成できたんですが、BloggerではどうやらFlashなどcgiファイルとかを置くことができないっぽい。
他に公開サーバーを持っている人ならいいが俺が持ってる公開サーバーは期限が今月で切れるロリポサーバのみだ。とりあえずは、期限が切れるまではロリポサーバ使うけどそれまでに対策を考えておかないとな・・・。

どこかのオンラインストレージからHTTPで引っ張ってこれないかな??
ちなみに画像はPicasaっていうGoogleが提供しているサービスを使ってゲットしてるっぽい。Flashもできないかな?

ちなみに、Flashは右下のミクたんのやつです。えへへっ

ネットワーク便利ツール

今日、WindowsにTelnetとSSHをインストールしようといろいろ調べてたら面白いサイトを見つけた。

http://itpro.nikkeibp.co.jp/article/COLUMN/20061024/251666/

ここでは、8つの便利ツールとしてWindowsのネットワークツールを紹介していた。便利なツールをいろいろ消化してたのでつい読み込んでしまった。WindowsでもLinuxと同等のネットワークツールが開発されている。サーバ系のシステムはUnix系、GUIアプリケーションはWindowsという固定概念を持っていた俺には大変勉強になった。
 
中でも、いいなと思ったのがFileZillaとOpenSSHです。

FileZillaはFTP・SFTP(SCP)・FTPS・FTPESと4つのプロトコルに対応したファイル転送ソフトで多機能な上、操作性等も簡単でわかり易い。私はこれまでFTPはFFFTP、SCPはWinSCPと使い分けていたがFFFTPはファイルダウンロードに時間がかかったり途中で他のアプリケーションが固まるといったことが多発していた。WinSCPも多機能ではあるが、英語でいまいち操作しづらく感じていた。FileZillaは一部完全ではないが主要な部分は日本語化されており、通信速度・動作にも問題は内容に感じられる。



OpenSSHはLinuxではよく聞くSSHアプリであるが、Windowsでも同パッケージが出ているのは初めて知った。

他にも知らないツールがいっぱい紹介されていた・・・
いいおもちゃが見つかったよww
これから、インストールして使っていこうかとおもいます。

これで、当分暇しなくて済みそうです。ぐへへh・・・

2009年12月13日日曜日

投稿1


HP作成てすと
fdさklk
HP作成てすと
fdさklk
ああああああああああああああああああああ



2009年6月29日月曜日

Linuxインストール

Fedora11が2009/6にリリースされた模様。

今まで私はfedora9を使っていたため、さすがにアップロードすることにした。

アップロードするのはいいが、私はこういったことで素直に成功したためしがない。こういったことから今までアップロードをしていなかった。そして今回も素直に行かなかった・・・・



とりあえず、アップロード手順を記述。いや、インストール手順ですね。。。

なんだかんだで、アップロードできずにFedora入れなおし(インストール)ましたので・・・;;

インストール手順
  1. Fedoraインストールイメージのダウンロード
  2. イメージファイルからインストールメディア作成
  3. linuxのインストール
  4. Grub設定の変更


Fedoraインストールイメージのダウンロード


Fedoraインストール方法は以下の4つの方法がある。
  1. インストールDVDを利用してインストール(今回はこれを利用)
  2. インストールCDを利用
  3. ネットワークインストール(ネットワークインストール用CDを利用)
  4. live-CDを作成し、ログイン後デスクトップメニューからインストール
当初私は3のネットワークインストールを行おうと思っていたが、なぜか作成したインストールCDからbootさせることができなかった。そこで、4の方法を試したがインストール途中でエラーが発生しまた断念。。
結局1の方法をおこなった。。。
もう、ダメダメだ。
なんだかんだでインストールDVDからインストールする


fedoraイメージのダウンロード

ここからFedora11インストールイメージをダウンロードする。
このページからFedora-11-i386-DVD.isoをDLする。

インストールディスクの作成

このisoイメージをDVDに焼くことでインストールメディアができる。
インストールメディアの作成方法は
  1. iso形式のライティングに対応しているライティングソフト(DVDdecrypter,DeepBurner)を利用する。
  2. 仮想ドライブにisoをマウントしてそのコピーを作成する。
今回は1の方法で行った。使用ソフトは元々インストールしていたDVDDecrypterを使用したが、ここでも素直にはいかなかった。
インストールメディアを作成は特に難しいことはない。
  1. DVDDecrypterを起動。
  2. mode→ISO→Write でisoイメージのライティングモードを指定。
  3. sourceにダウンロードしたfedoraのisoファイルを指定。
  4. 空のDVDメディアをDVDドライブに挿入し書き込み開始。
以上。これで、インストールメディアは作成できる。
しかし、実際にbootさせようとすると途中で止まってしまう。
Please Press <ENTER> to continue install
見たいな文字が出てお望みどおりENTERをクリックするとビープ音がなるだけで何も反応しない・・・・。
・・・・さて、どうしたものか。。。。
ライティングミス?ハードとの相性?いろいろ原因を考えてみたが突き止められそうにない。
そんなわけで今度は別のライティングソフト(DeepBurner)でインストールメディアを作成することにした。
  1. DeepBurnerを起動。
  2. プロジェクトタイプに”ISOイメージの書き込み”を指定。
  3. イメージファイルにfedoraのisoを指定。
  4. ドライブは空メディアを挿入し物理ドライブを指定。
  5. ISO書き込みボタンで書き込み開始。
結構簡単にできる・・・・。はじめ、私はこれをノートPCのほうでやろうとしたが最後のISO書き込みボタンがアクティブにならず書き込みができなかった。いろいろ試したが結局無理でDesktopのほうでDeepBurnerをインストールして試してみたらすんなりできた。。
もう、、わけ分からん・・・・。vista,xpの互換性や管理者権限など変えても変化なし。DVD43やデーモンツール切っても変化なし・・・。
原因追求は断念。
大体いつもこんな感じで無駄な時間が流れてゆく。。
とりあえず、これでインストールDVDが完成した。

Fedoraインストール

ようやく待望のFedora11のインストールだ!
  1. インストールメディアをDVDドライブにセットした状態でPCを再起動。
  2. インストールDVDをbootしインストールメニューを操作する。
    参考サイト(http://itpro.nikkeibp.co.jp/article/COLUMN/20090611/331772/)

    すでにvistaとfedora9をインストールしているHDDなのでインストール方法は”既存のlinuxインストールパティションに上書き”を行った。

    デフォルトの起動OSはOther(vista)とした。
  3. インストール完了後、再起動。 
  4. 初期設定を行いインストール完了! 

GRUB設定ファイルの変更

と、ここでようやくFedora11インストール完了したと意気込んでいた。
しかし、ここでも不都合が発生していた。
WindowsVistaが起動できなくなっていた。。。
俺がメインで使用しているのはやはりWindowsだ。仕事で使っているデータなんかもいろいろ入っている。ヤヴァイ・・・・
症状
  1. PC起動後Grubの起動選択画面が出力される。
  2. Fedoraを選択すると正常起動。Other(つまりvista)を選択すると"BOOTMBGR
    is missing"と出力されWindowsが起動できない。
GRUBでFedoraとWindowsの選択画面が出力されるところまでは問題ない。しかし、Windowsを選択したときエラーが生じてしまう。エラー内容は”bootmgr is missing”だ。
いろいろ調べてみたところMBRがぶっ壊れているのではということだ。。
VISTAのインストールメディアを使いMBRを修復することにした。
  1. vistaインストールメディアを挿入し、コンピュータの修復を選択。
  2. コマンドプロンプトを選択する。
  3. >Bootrec.exe /FixBoot や Bootrec.exe /FixMbr を実行し修復する。
再起動してみると何とかWindowsが起動できた。フゥフゥ~(*
 ̄)-3旦ε-( ̄ *)フゥフゥ~
しかし、ここでも不都合が生じていた。
なんと、今度はLinuxが起動できなくなっていた。つまり、MBRをLinuxのGrubからWindowsのNTLDRに変更したことで無条件にWindowsを起動する設定になっていた。
これでは意味がないLinuxをインストールした意味がない。
このPCはどうやら俺をばかにしている。いつも俺を困らせて楽しんでいるんだ。。。。
とりあえず、泣きそうになりながらもfedoraを再インストール・・・。。
なんとか、起動時にGrubのFedoraとWindowsの起動選択画面が出力された。
ここで現状を整理する。
この状態(fedoraインストールでMBRにGRUBインストールを選択した)ではMBR(マスターブートレコードつまり1段階目のブートローダー)にはGRUBがインストールされているはず。出なければGRUBの選択画面が出るわけがない。
ここでの問題はGrubでWindowsを選択して正常にWindowsのboot処理に移らないことだ。
つまり原因は以下の2つ
  1. Grubの設定がおかしい
  2. Windowsパーティションにブートローダーがインストールされていない。
2のwindowsパーティションにブートローダーをインストールする方法は良く分からないのでとりあえず1のGrubの設定を見てみた。

grubの設定ファイル:/boot/grub/grub.conf
なんか、よく分からんけど気になるところがあった。
title Other
    rootnoverify (hd0,1)
    chainloader +1
  

現在のパティションは以下の設定になっている。
  1. sda1    testプログラム(メモリチェックやシステムチェックなど)(基本パティション)
  2. sda2    vistaバックアップ領域(基本パティション)
  3. sda3    vistaメイン領域(基本パティション)
  4. sda4    linux用拡張パティション
  5. sda5    /boot(linux論理パティション)
  6. sda6    / (linux論理パティション)
rootの設定を確認してみるとsda1は(hd0,0)そしてsda2は(hd0,1)となるらしい。
現在の設定は(hd0,1)となっており、つまりvistaバックアップ領域からbootしようとしている。
これはおかしい。
なので、(hd0,1)→(hd0,2)と変更して再起動してみた・・・・
キタ━( ゚∀゚ )っ ━( ゚∀゚ )っ━( ゚∀゚ )っ ━!!!!
PC復活しました。
どうやらlinuxインストール時にGrubを自動で設定するみたいでその時HDDの最初にある
Windowsパティションを指定するようです。当然その指定されたパティションにブートローダーがインストールされていなければWindowsは起動できないので”Bootmgr is
missing”が出力されていたわけです。
良かった良かった。
さて、これからサーバ構築です。

2009年6月25日木曜日

5.モデルクラスと連動していないフォーム作成関数


モデルクラスと連動していないフォーム作成関数

railsではフォーム作成用関数は2種類存在する。
ひとつは前回紹介した フォームビルダーオブジェクトを利用したモデルと連動して
フォームを作成する関数。
そして、今回の説明するモデルクラスと連動していないフォーム作成関数である。
まず、簡単な例を見てもらおう。
Age
<%= text_field_tag("user[age]", @user.age) %>
administrator
<%= select_tag("user[user_category_id]",options_for_select(
{:マスター=>1,:管理者=>2,:一般ユーザー=>3},@user.user_category_id))%>
Other
<%= text_area_tag("user[other]", @user.other,{:style=>'width: 500px; height: 200px;'}) %>
画像
<%=file_field_tag("user[upload_image]") %>

このようにすることでview側では以下の様にフォームが作成される。





HTMLは以下のようになっている。
Age
<input id="user[age]" name="user[age]" type="text" value="29" />
administrator            
<select id="user[user_category_id]" name="user[user_category_id]">
<option value="1">マスター</option>
<option value="2">管理者</option>
<option selected="selected" value="3">一般ユーザー</option></select>
Other
<textarea id="user[other]" name="user[other]" style="height: 200px; width: 500px;">
一般ゆうざー</textarea>
画像            
<input id="user[upload_image]" name="user[upload_image]" type="file" />

そして、この値をコントローラで取得する方法は以下のとおり。
def update
    puts(japanese_time(Time.now));
    puts("ACTION_NAME=#{params[:action]}");
    @user = User.find(params[:id])
    @user.attributes=params[:user];
    @user.hashed_password=User.hashed_password(params[:user][:password],@user.salt);
    respond_to do |format|
      if @user.save()
        flash[:notice] = 'User was successfully updated.'
        format.html { redirect_to({:controller=>'admin/users',:action=>'show',:id=>@user.id}) }
        format.xml  { head :ok }
      else
        format.html { render :action => "edit" }
        format.xml  { render :xml => @user.errors, :status => :unprocessable_entity }
      end
    end
end
こんな感じでフォームビルダーオブジェクトを利用することなくフォームを記述することも可能である。
今回はモデル(Userモデル)の値についてフォームの作成を行っているが、この方法はモデルと関係ない値についても
同様にフォームを作成することができる。
つまり、モデルを利用したフォームビルダーオブジェクト(form_for @user do |f|)に比べて応用が利き、つぶしの利く方法といえる。
要は、railsではフォーム表示関数が2通り用意されているがこの方法を知っていれば全ての用途に対応できるということである。
そういった理由もあり私はこんなモデルを利用する場合でもこの関数を多用している。
しかし、これはrubyの基本設計に少々反した考えではある・・・
何はともあれ、これらフォーム作成用関数について簡単にまとめてみた。オプションなどについては暇があったらまた追加してゆく。
関数
作成コード
file_field_tag 
<input type="text" />
password_field_tag 
<input type="password" />
check_box_tag 
<input type="checkbox" />
field_set_tag do
<fieldset>
????
</fieldset>
file_field_tag 
<input type="file" />
hidden_field_tag 
<input type="hidden" />
image_submit_tag 
<input type="image" />
label_tag
<label for=""></label>
radio_button_tag
<input type="radio" />
select_tag
<select></select>
submit_tag
<input type="submit" />
text_area_tag
<textarea cols="20" rows="1"></textarea>

2009年6月20日土曜日

4.railsフォーム作成関数について

HPを作成してゆく際にはフォームの利用は不可避である。railsではこのフォーム部品(テキストボックスやボタンなど)を作成するための関数が定義されている。



私の知る限り、このフォーム作成部品は2種類存在する。

1.モデルと連携してフォーム部品を作成する関数。

2.モデルとは無関係にフォーム部品を作成する関数である。



モデルと連携させてフォームを記述する方法はとても記述が簡単である。そもそも、railsはMVCやファイル名、DBの関係が密接である。

どういうことかというとMVCのクラス名やファイル名、DBテーブル名などは決められたものでなければならないという決まりがある。



仮にUserというモデルを作成するとする。

ruby script\generate scaffold user name:string plan_date:date status:integer comment:text

するとrailsの命名規則により以下のようなファイル名とテーブル名、クラス名が作成される。

ファイル名
コントローラクラス名
UsersController
コントローラファイル名
users_controller.rb
テンプレートのフォルダ名
app/view/users
ヘルパーモジュール名
UsersHelper
ヘルパーファイル名
users_helper.rb
レイアウトテンプレートファイル名
Users.html.erb
機能テストファイル名
users_controller_test.rb
データベーステーブル名
users
モデルクラス名
User
モデルクラスファイル名
users.rb
単体テストファイル名
user_test.rb

このように、コントローラ名をusersとしただけでそれ以外のファイル名やクラス名、テーブル名まで決まってしまう。

一見これは応用性が無く融通の利かないように感じるかもしれないが、こうすることによって多言語ではアクションとモデルとビューおよびテーブルとの結びつきなどを一つ一つ設定していた作業を行うことなく一貫した手法でシステム構築が可能となる。


この考え方がこそが、「設定より規約」railsの基本理念の根幹だ。

私はこの考え方に痛く感動している。rubyが好きな一番大きな理由だ。

さて、話題が大分フォーム作成関数の話からそれてしまった・・・。

これからフォーム作成用関数の説明をしてゆく。

1)モデルと連携してフォームを作成する。

<% form_for(@footprint) do |f| %>
  <b>Article</b>
    <%= f.text_field :article_id %>
<b>User</b>
    <%= f.text_field :user_id %>
  <%= f.submit "Update" %>
  <% end %>

form_for(@footprint) do |f|
の部分でモデル(@footprint)からフォーム作成用インスタンス(
これをフォームビルダーオブジェクトという)を取得し end までの間でフォーム部品を出力している。



フォーム出力関数には以下のような種類がある。


text_field
<input type="text">
password_field
< input type="password">
hidden_field
< input type="hidden">
text_area
< textarea>
check_box
< input type="checkbox">
radio_button
< input type="radio">
select
< select> option配列を忘れないように
date_select
コンボボックス3つ(年、月、日)
file_field
< input type="file">


以上のメソッドを利用することで簡単にフォームを作成することができるようになる。
f.text_field :name
     ↓
<input id="user_name" name="user[name]" type="text"
  value="しあさん" />
このように、 f.text_field :name しかしていないにも拘らず自動的にモデル名も含めたname,id属性や初期値(value)を記述してくれる。

これを可能にしているのがrailsの基本設計の"設定より規定"の概念だ。

このように、モデルに関係するデータを扱う場合フォームビルダーオブジェクトを利用すると簡潔にコードを記述できる。

しかしながら、フォームの用途はモデルのデータを扱うためだけではない。そこでrailsではモデルからフォームを作成する関数以外に単純に(フォームとの連携なしに)フォームを作成するが可能なメソッドが定義されている。

モデルとは無関係にフォーム部品を作成する関数


これは次回記述します。

眠いので

2009年6月19日金曜日

3.RoRルーティング処理について

railsでのREST設計と密接な関係にあるのがこのルーティングの設定である。

要は、このURLとこのHTTPメソッドでアクセスがあった場合はこのページにアクセスさせるといった感じのページ遷移の設定だ。
この、ページ遷移の設定ファイルはrailsプロジェクト内のconfig/routes.rbファイルである。

今まで、俺はRESTのことを学習するまでrailsのページ遷移を以下のように記述していた。
map.connect("users/login",:controller=>'users',:action=>'login');

つまり、コントローラにusers, アクションにloginが指定されたら、usersコントローラーのloginメソッドに処理を渡すという記述である。
もちろんこの処理を書くことでそのページへのページ遷移が可能となる。しかし、railsが持っているRESTの機能を生かした方法とはいえない。

つまり、この記述方法ではどのHTTPメソッド(GET,POST,PUT,DELETE)でもアクセスできてしまい。本来のRESTの規則から逸脱してしまっている。


開発を行っているフレームワークがrailsであるのなら開発者はそのrailsに合わせるの筋である。

なので、本来は上記のようなルーティング設定方法ではなく以下のようにHTTPメソッドも含めた形で行うべきである。
map.resouces(:users,:collection =>{:login=>:get}); として行うべきだ。

この場合のアクセスURLとHTTPメソッドは~~~/users;login (GET)となる。

:collectionというのはindexやcreateなど複数のリソースを扱う類のフォームで使用し、それ以外にも:new(newアクションつまり新規登録フォームの類)、:member(show,edit,update,delete=つまり、個別のリソースを扱う類)といったシンボルが使われる。
(俺は、いまいちこの違いがつかめていない・・・・)

ちなみに、もともと map.resources :users というメソッドが記述されているが、これはindex,create,show,update,destroy,editといったCRUDのためのページへのルーティングを追加するための記述だ。ちなみに、indexとcreateは同じURLでアクセスだがHTTPメソッドの種類によってどちらを表示させるか制御しているし、 show,update,destroyも同じURLだがHTTPメソッドの種類によってその表示ページを制御している。
(これを知って、俺は今までURLの事で不思議に感じていたなぞが解けた)

これまで、RESTを考慮したrailsの設計について書いてきたが実はこのRESTで考えられているHTTPメソッドのうちPUTやDELETEは現在のブラウザでは未だ対応していない。
つまり、実際に<form method="put">などとしてページ遷移の記述を行うとブラウザが対応していないため正常にアクセスできない。
ではいったいrailsはどのようにしてRESTの設計を導入しているの・・・・。それは、PUTやDELETEメソッドで送信したい場合は実際には<form method="POST">としてデータを送り、form内で<input type="hidden" name="_method" value="put" />と記述することでこのRESTの思考を仮想的に実現させているのである。

最後に、デフォルトの7アクションのURLとHTTPメソッドの関係の表を乗せておく。
(一応コントローラにも記述してあることだが・・・)



アクションURLHTTPメソッド
index /usersGET
new/users/newGET
create/usersPOST
show/users/123GET
edit/users/123;editGET
update/users/123PUT
destroy/users/123DELETE


取りあえず今日はここまで。

2009年6月18日木曜日

ReSTfulについて

今回はrubyでのURLマッピングの方法とRESTフルの考え方について勉強してみた。

RESTフルっていうのは正直初めて聞いた言葉で当初検討もつかなかった。
同じ会社の方からのメールの内容に書いてあったのだが全くわけが分からなかったのでちょっち調べてみた。

まず、そもそも、RESTってなに??ってところから調べていったわけだが、ここに分かりやすく書かれていた。

要は、WEBページでのデータの取得・登録・更新・削除の処理をURIとHTTPメソッドのGET、POST、PUT、DELETEを適切に使って行う方法ということらしい。

そういえば、railsでページ遷移を行う際に正しくURIを記述しているにも拘らず、正常にページ遷移できないということがあり、 GETをPUTにしたらアクセスできたなんてことがあった。

現在、一般に利用されているページ遷移の方法はURLとGETかPOSTを利用する方法が主である。
そして、俺もrubyを学習するまで変数の受け渡しは GET、POSTで行うものだと思っていたし、GETとPOSTの違いについてさほど深く考えてすらいなかった。
HTTPメソッドの利用方法は本来以下のようにして行われるべきもので、現在のようにあらゆる処理に対してGETやPOSTでのアクセスを許可するべきではないらしい・・・。
ちょうど、IPアドレス(URI)とポート番号(HTTPメソッド)のような仕組みだ。

メソッド役割
GETリソースの取得。GETでのアクセスはリソースの内容に影響を与えない。
POSTリソースの新規作成
PUT既存のリソースのアップデート
DELETEリソースの削除

RESTとはURIが指し示すリソース(つまり、htmlファイル・画像)に対して、HTTPメソッドを本来の意味で利用することで、そのリソースに対して何をしたいのか、を指定できるようにしようと提唱しているのだ。
そして、このRESTの考えを忠実に再現することをRESTfulというらしい。
俺はこの考えは好きだ。うまく説明できないが、ある物事を実行するとき何かしら規約・信念をもって取り組むのは決してめんどくさいことではなく分かりやすく、間違いの少ない手法だ。

俺は、rubyの設計哲学であるDRY(Don't Repeat Yourself)や設定より規約(convention over configuration)といった考え方が大好きだ。今回のRESTはこれと似た匂いを感じる。

rails2.0以降はこのRESTfulのシステムが導入されているらしい、なんか面白くなってきた。

2009年6月15日月曜日

Flashはじめの一歩

唐突ですがFlush勉強することになりました。
正直Flushのこと何も知りません。ActionScriptって言語を使うってこと、そしてブラウザで動いてる動画という印象しか浮かんできませんww

そんな状態なんで取りあえず、Flushとは何なのか、そしてその作り方を基礎から勉強してゆきます。

取りあえずググって見て、参考にしたHPは以下のやつ。
flush基礎

どうやら、flushはActionScriptをゴリゴリ書いていくんじゃなくソフトを使って開発してゆくスタイルみたいです。
グラフィックに特化した言語なのでやはりその開発方法もGUIにしやすいんでしょうね。もちろん、ActionScriptをゴリゴリ書いてもいいんだろけど便利なツールがあるなら使うまで。
どうやら、ADOBEのflus開発ツールが良いらしい。
そいや、職業訓練でフォトショップやらイラストレータ・ドリームウィーバーなどのCS2使ってたとき一緒にはいってたな・・・・。

一応ダウンロードしようかとDLサイトへ・・・
え!?9万!?単体で?高ッ!
まあ、うわさでは聞いてたんですが・・・予想以上でした。
とりあえず、30日無料体験版というのがあったんでそれを使うことにしました。
なんか、仮想環境でインストールしたら何度でも使えるとか、レジストリ書き換えれば無料期間延長できるっていう噂は聞きますが取りあえず今回は善良な市民ということでインストール^^
adobe flush 体験版DL(ログイン画面)

ダウンロードが終わったらインストール取りあえずめんどくさかったんでデフォルトの状態で”次へ”をクリックしていきました。

無事インストール完了し起動した画面がこれ。




ちょっとかっこいいb(落書きは無視してくださいww)
ウィンドウの上のバーが無い機能的なところ俺的には好きです。
大体こういった開発系ソフトはやけにwindou内にブロックがたくさん必要で、狭い画面で作業しないといけないんで上のタイトルバーがないのは素敵でした。今後のwinndowの革新的なスタイルですb
是非Eclipseなんかも採用してもらいたい!!

ちょっと長くなりましたが、今日はここまで。
操作方法は追々やっていこうとおもいます。

2.RoRプロジェクトの作成とCRUDの機能作成

railsプロジェクト作成

ワークスペースに移動し rails -d 使用DB名 作成プロジェクト名
ex) >rails -d mysql memopad


DB設定入力

config/database.ymlに設定情報記入
config/database.ymlの設定を元にDBユーザーを作成

config/environment.rbファイルの先頭に
$KCODE = "UTF8" を追加

mysql設定ファイルmy.iniの最後に
default-character-set=utf8
skip-character-set-client-handshake を記述
その他、character-setがutf8以外になっていた場合は変更しておく。

DB設定情報(onfig/database.yml)をもとにDB作成
rake db:create:all

コントローラー、モデル、マイグレーションファイル,スキーマファイルなどを一括作成。
ruby script/generate scaffold 作成テーブル名(単数形) カラム名:型 カラム名:型 ・・・
ex)ruby script\generate scaffold function name:string plan_date:date status:integer comment:text

マイグレーションファイルを元にテーブル作成
rake db:migrate(バージョン指定はVERSION=2など)

DBを開きshow columns from table名;でテーブルを確認。指定したとおりに出来ていなかったり、追加したい場合はdb\migrateフォルダにファイルを追加して再度rake db:migrateを行う。

以上でCRUDの機能は実装できる。

1.Ruby開発環境構築(MySQL、RoRの導入)


ruby(one-click installer)ダウンロード・インストール

rubyの環境構築はRuby本体とRakeRubyGemsの3つが必要になる。通常はこの3つをそれぞれダウンロード→インストールしていくのだが、同時に3つともインストールできるOne-Click Installerなるものがある。↓
http://rubyforge.org/projects/rubyinstaller/
インストール後、ruby.exeにパスを通しておく


rubygemsのダウンロード

http://rubyforge.org/projects/rubygems/

rubygemsを展開し、rubyのホームフォルダに入れる。
rubygemsフォルダで”ruby setup.rb”を実行する。

railsのインストール

gem install rails --include-dependencies [バージョン指定は -v 2.0.2 など]

以下のようになっていればよい。

   

どうしようもないクズのアーチャー