2009年03月16日

仕事と休憩

こんにちは、ナカムラです。

この時期、就職作品の作成に勤しんでいる学生さんも多いと思われますが、どのようなペースで作業されてますか?
プログラムに夢中になると、ついつい疲れを忘れて集中してしまいますが、本人の自覚しないところで能力は落ちているものです。
今日は仕事と休憩について、話をさせて頂きます。


*


考え続けることによる弊害は、段階を追って現れてきます。
その様子を、横軸に時間経過、縦軸に成果物のクオリティを割り当ててグラフにしてみると、次のようになると思います。


1バリバリ働ける状態

20090316_1.png

目標の及第クオリティに、期間内に達することが出来る状態です。
作業し始めは誰でもこういう状態だと思います。



2能率が低下する状態

20090316_2.png

及第となるクオリティに達するのに、予定以上の時間が掛かる状態です。
ちょっと疲れてきたかな〜という感じですね。


3クオリティが落ちる状態

20090316_3.png
及第点に達することが出来ない状態です。
この状態になったら、さっさと休憩した方がいいです。作業が結果に表れてないんですから、実質休憩してるのと一緒ですし。


4ミスを発生させる状態

20090316_4.png

働けば働くほど、クオリティが落ちていく状態バッド(下向き矢印)
働かない方がマシな状態です。
こんな状態なんてあるのか?とお思いでしょうが、あり得なくもないです。特にプログラマは。
例えば、徹夜で組んだプログラムがバグってて、翌日以降はそれを直すことに費やす…とか。
休んでた方がよかったじゃん!ふらふらと思える状態ですね。

まあここまで極端な能率ダウンは起こらなくても、作業をし続けた結果次のような状態になって、「あれ?間に合わねー!」なんて事は十分にあり得ます。

20090316_5.png


実際のゲーム開発では上記の4つの状態が、日ごと、時間ごとに入り乱れてやって来る訳です。

*


休憩時間中は、時間が経過すれどもクオリティが上がる訳ではないので、3の状態です。つまり、適度に休憩を入れながら仕事をするというのは、次のグラフのような状態を目指すという事です。

20090316_6.png


かといって、休憩を取りすぎると次のようにもなりますから、気をつけて…。家で作業してると、ついついこうなってしまう人は多いんじゃないでしょうか?

20090316_7.png


*

自分が今どの段階にいるのかというのは、案外自覚しにくいです。
肉体の疲れなら、体が神経を通して危険信号雷を伝えてくれますけど。
自分なりの目安を設けていると、「あ、疲れてきてるふらふら」というのがわかりやすくなると思います。
私の場合、「思い出す」という行為に時間が掛かるようになると、疲れてきてるんだなと判断しています。
あと、100から7を順に引いて、最終的に2になるまでスムースに計算できるかどうか、試してみるとか。
今、この計算をやったら最終的に1になってしまったので、ちょっと休憩してきますたらーっ(汗)

では、また手(パー)

posted by 管理人 at 18:09 | Comment(0) | いいモノづくり道

2009年03月13日

明日はホワイトデーですね

みなさん、こんにちは!
今日のblog担当はエリーですわーい(嬉しい顔)


健康診断結果が返ってきました。
1年前と比べて・・・身長が伸びましたバッド(下向き矢印)
正直なところ、これ以上大きくなりたくないのですが・・・。
毎年思うのが、いつになったら成長はストップするのかと言う事です。


さて、明日はホワイトデーですねexclamation×2
みなさんはどのようにお過ごしでしょうか?

大好きな恋人と過ごす方もいれば、仕事という方もいらっしゃると思います。
プレゼントを用意してます!という方もいらっしゃるんじゃないでしょうかexclamation&question
今年は土曜日なので、お仕事のお休みの人も多いんじゃないかと思います。
是非とも良い1日にして下さいね!

さてさてそんなホワイトデー1日前ですが、実は私もプレゼントを頂きました。

sewa.jpg

ですわーい(嬉しい顔)

お酒の大好きな私の為にヘキサドライブのメンバーが用意してくれました。
残念ながら、今日は風邪の為、飲むことはできなさそうですが、明日以降、必ず頂きます!

以上、1日早いヘキサドライブ ホワイトデーでした。


posted by 管理人 at 17:32 | Comment(0) | 日記

2009年03月12日

VisualStudioでのブレークポイント設定方法

こんばんは、平尾です。
昨日、健康診断の結果が来まして、若干数値が上がっているところがありました。
運動不足が数値として提示された以上、次回までにこのパラメータを調整しなければ!と思いました。
みなさんも悪いパラメータにならないようお気をつけください。


*

今回はVisualStudioでのブレークポイントの使い方を解説していきます。
デバッグには必須ですが、意外と知らない人もいるのではないでしょうか。


位置情報ブレークポイントの設定方法
設定によっては操作方法が違うかもしれませんがご了承ください。
ブレークポイントをセットするにはソースを開き、
セットしたい位置で F9 です。
セットするとソースの左端にこんな赤い丸が表示されます。
この状態でプログラムを起動するとその場でプログラムを停止でき、各種変数の確認や書き換えなどができます。

ブレークポイントを削除するには、同じ行で F9 です。
ブレークポイントを一時的にOFFにするには Ctrl + F9 です。
ブレークポイントを全削除するには Shift + Ctrl + F9 です。

基本操作ですね。
止まった状態では黄色い矢印が表示されていると思います。
これをドラッグ&ドロップでつまんで移動させると、実行中の位置をずらすこともできます。
ずらした場合、途中のコードは実行されません。
実行位置だけ変更することになります。


位置情報複数回実行されたときにブレークするには
ブレークポイントをセットし、そのブレークポイントに何回か来たときに止めたいことがあると思います。
そんなときはを右クリックし、ヒットカウントを選びます。
選び方には
・常に中断
・ヒットカウント数が次の数と等しいときに中断
・ヒットカウントが次の数の倍数になったときに中断
・ヒットカウントが次の数以上になったときに中断

の4種類あります。
お好みのヒットカウント(何回ブレークポイントの位置に来たか)のタイプを設定し、上記のどれかを選びます。

ここで注意事項です。
ヒットカウントはデバッガが回数を数えてくれているので、for文のループカウンタ等とは全く別に測定しています。
なので以下のプログラムで pData->update(); の位置にヒットカウントが 10の倍数のときに止めるとした場合、
for( int i=0; i<16; ++i ) {
Data* pData = getData(i);
if( pData ) {
pData->update();
}
}

1回目は i=9
2回目は i=3
3回目は i=13
4回目は i=7
5回目は i=1

といった状態で止まってしまいます。ご注意ください。
i == 10 の時に止めたい場合は次の方法↓を使います。


位置情報条件を指定してブレークするには
上記の i==10 のときに止めたい場合、ブレーク条件を指定すれば止めることができます。
を右クリックし、条件を選びます。
条件には
i == 10
を入力し、"true の場合"にチェックを入れます。
これで毎回 i == 10 のときに止まります。

"変更された場合"のチェックに入れ、条件に
i
とだけ入れると、前回来たときと比べて i が変わっていた場合にのみ止まります。
ただしブレークポイントを設定した行での値チェックになりますので、書き換わった瞬間をとらえることはできません。
書き換わった瞬間をとらえたいというときには次の方法↓を使います。


位置情報書き換わった瞬間ブレークするには
"書き換わった瞬間をとらえたい変数"に正しい値が入っている箇所でブレークポイントをセットし止めます。
次にメニューの「デバッグ」→「ブレークポイントの作成」→「新しいデータブレークポイント」を選びます。
次にアドレスに変数のアドレスを入力します。

例えばグローバルな変数 int counter があったとしましょう。
この counter が書き換わった瞬間をとらえたいときには、アドレスの欄に
&counter
と書きます。

バイト数には変数のサイズを入力します。
サイズの上限ですが、ハードウェア的に4バイトまでしか対応できないようです。

アドレスだけ分かっているという特殊な場合は、アドレスの欄に直接アドレスを書きます。
例えば
0x014a5320
といったふうに入力します。(値は適当です…)

この方法はブレーク箇所を設定しないため、書き換わった瞬間を止めることが出来ます。
なのでメモリ破壊を発見する際に大活躍します。
是非覚えておきましょう!ぴかぴか(新しい)
ただし、1つのプロジェクトにつき 4つまでしかセットできませんので注意してください。
ちなみに自動変数をこの方法で止めようとすると、全然関係無いところでも止まってしまいます。
自動変数はスタック領域からとられるためです。


*

いかがでしたでしょうか。
デバッグ作業には欠かせないブレークポイント、しっかり自分のものにして使っていきましょう!
ここでは紹介していませんがトレースポイントなんていう機能もあったりします。奥深いですね。
興味のある方は調べてみてはいかがでしょうか。
それでは皆様、素敵なプログラムライフをわーい(嬉しい顔)

posted by 管理人 at 18:42 | Comment(0) | プログラミング

2009年03月11日

カーネル

おいっす〜。カトウです。

いや〜、24年前に阪神が日本一になった時に道頓堀に投げ込まれた
カーネル・サンダース人形が引き上げられましたねえ。野球

それ以来、阪神が日本一になれないのはカーネル・サンダー人形の呪いがかかってるとか言われる始末がく〜(落胆した顔)

現在は甲子園に置いてくれるように頼んでいるそうです。
日本一になったらまた投げ込まれたりして。。。
これで今年は日本一奪回となるでしょうか?目

ところで健康診断の結果が返ってきました。耳
むむむ、中性脂肪が高く、糖分、脂肪分、アルコールを控えて下さいと
なってしまいました。ふらふら

健康管理も仕事のうちですので

最近気になった本で以下の本があったので
ためしてみようかと思います。手(グー)

2009031100.jpg

成果はいかに。。。。

これから新入社員になる方は
学校も卒業して不規則な生活になりがちだと思いますので
健康管理に気をつけて万全の状態で入社してくださいね。わーい(嬉しい顔)

posted by 管理人 at 19:37 | Comment(0) | 日記

2009年03月10日

今年の梅

こんにちは!イワサキです。
今日はお昼休みに梅を見に行ってきました。

ヘキサドライブの本社からしばらく行ったところにある大阪城公園の梅林です。
最近雨が続いたりしていましたので見に行けていませんでした。

そういえば梅林については去年のブログにも掲載していました。
今見返すと偶然にも今日と同じ日でしたね(笑)

時期的に梅は満開のピークを過ぎようとしていますので今日お昼休みに見に行ってきました!
一年前はこの時期まだ満開でしたので、すこし時期が早まっているということでしょうか。わーい(嬉しい顔)

去年は一眼レフカメラカメラで撮影しましたが今年は携帯携帯電話で撮影しました。
最近の携帯の画質は侮れませんね・・・!

2009-03-10-1.jpg

2009-03-10-2.jpg

2009-03-10-3.jpg

桜の蕾はまだかたいですが、もうすぐ一ヶ月もしないうちに開花しそうですね。
今後も少しずつヘキサドライブの周辺環境も紹介していきます。
都市生活を楽しみつつも季節を感じて仕事ができるというのも面白いですよねぴかぴか(新しい)


学生の皆さん!就職の春を見つけに行きましょう!パンチぴかぴか(新しい)ぴかぴか(新しい)

ヘキサドライブもそんな皆さんと会える時を待ち望んでいます 手(パー)

2009-03-10-4.jpg

うわーこの枝のシャドウマップ解像度高っ!
花びらの透明感を出すにはSubSurfaceScatteringを実装かなー
被写界深度はやっぱ絞り形状出さないとねー

・・・とか思い始めたら重症立派なCGプログラマです(笑

posted by 管理人 at 16:37 | Comment(0) | about ヘキサ

2009年03月09日

明日はヘキサドライブ会社説明会 in Tokyo

花粉症。

私はまだ大丈夫なのですが、まわりは大変そうな方がちらほら。あせあせ(飛び散る汗)


こんにちは、タマキです。


今はスギの花粉が主のようですが、スギ自体が日本特産のものであるがために、この花粉症はほとんど日本だけとのこと。

こちらの方は海外にいけばラクになれそうですね。


さて、明日は 東京ヘキサドライブ会社説明会 を行います。

前日になり、少し空きも出てきているようですので、興味のある方は是非エントリーしてください。


スギ花粉の季節になると、、、『ヘキサドライブ会社説明会』をいいイメージで思い出せるものにしたいと思います。


それでは会場でお会いできることを楽しみにしています。わーい(嬉しい顔)

posted by 管理人 at 18:59 | Comment(0) | 採用 -お役立ち情報も-

2009年03月06日

選考中・・・

こんにちは、松下です!

さてさて、先日は大阪の3月最後の会社説明会がありました。
多くの学生の皆さんに会えて、非常に嬉しく思っております。

3月の会社説明会は、あと2回。
3月10日(火)
3月25日(水)
です。
どちらも、東京での会社説明会となります。

リクナビさんからエントリー出来ますので、
ふるってご参加下さい。

今の所、「満席」になっておりますが、
前日になってキャンセルされる方もいらっしゃるので、
是非こまめにチェックして頂ければと思います。


また、現在は2月末で一旦締め切らせて頂いた一次募集の選考を行っています。
思った以上に沢山の応募を頂きまして、ちょっと時間が掛かっておりますので、もう少々お待ちくださいませ。

1次募集にご応募が間に合わなかった方も、いらっしゃると思いますが、
2次募集については、また改めてご案内することにはなると思いますので、こちらももう少々お待ち下さい。
今のうちに提出作品などがあれば、それらのブラッシュアップグッド(上向き矢印)などをしておいて頂けると嬉しいですわーい(嬉しい顔)


それでは、次なる説明会もしくは、応募書類にてお会いできることを楽しみにしています〜。手(パー)

posted by 管理人 at 13:29 | Comment(0) | 採用 -お役立ち情報も-

2009年03月05日

プログラマーの三大美徳

こんばんはexclamation
カラオケに行った時は1曲目に奥田民生の『イージュー☆ライダー』を選曲するシラッチです。

さて、ついに最適化についてのブログ担当が僕にも回ってきました手(チョキ)
最適化…最適化…と考えていて、思い出したのが、Perl(パール)というスクリプト言語の生みの親、ラリー・ウォール(Larry Wall)さんの「プログラマーの三大美徳」です。
プログラマーではご存じの方が多いのではないでしょうか。
ラリー・ウォールさんによると、プログラマーの三大美徳とはなんと、無精・短気・傲慢だそうです目

*


無精(laziness)
トータルで見たエネルギーの支出を減らすために、多大な努力をするようにあなたを駆り立てる性質。
こうして労力を省くために書いたプログラムは他人も使うようになり、そのプログラムに関する質問にいちいち答えずにすますためにドキュメントを書くようになる。
そのために、プログラマーにとって最も重要な素質である。

短気(impatience)
コンピュータがサボっているときに感じる怒り。
あなたの指令に反応するだけでなく、実際に指令を予測する──あるいは、少なくともそのようなふりをする──プログラムを書く原動力になる。
それゆえに、プログラマーにとって2番目に重要な素質である。

傲慢(hubris)
ゼウスの怒りに触れるほど、プライドが高いこと。
また、他人にケチをつけられないようなプログラムを書く(そして維持する)ための原動力になるもの。
それゆえ、プログラマーにとって3番目に重要な素質である。

*


一般的に短所として捉えられる気質で、美徳をあらわしているアソビゴコロが面白いですねわーい(嬉しい顔)
どれもプログラムを最適化をするために欠かせない気質ではないでしょうか。

確かに周囲の優秀なプログラマーはこの気質を持っているような気がしますが…僕自身はというと、まだまだ最適化の余地ありですexclamation
少しづつ体現できるよう日々努力していきたいと思いますグッド(上向き矢印)

posted by 管理人 at 18:57 | Comment(1) | 日記

2009年03月04日

花粉対策の最適化?

こんにちは、イワムーですわーい(嬉しい顔)

三寒四温を肌で感じるこの時期、
本格的な春の訪れを楽しみにしている方は多いのではないでしょうか?
実際、私の周囲にも四季の中で春が一番好きだという人が多いです。

一方私はというと、春は苦手なんですよねたらーっ(汗)
重度の花粉症で。。。今の時期はスギ花粉が大暴れ。
この猛威に耐えしのいでもヒノキ花粉がやってきます。
5月までこの辛い状況が続くと思うと気が滅入りますバッド(下向き矢印)

そんな花粉症ですが、皆さんいろいろな対策を講じていらっしゃると思います。
花粉症用の立体マスク、甜茶、プロバイオティクス、レーザー治療、減感作(げんかんさ)療法など手軽なものから大々的なものまでさまざまですねひらめき

私も上記に挙げた例のいくつかは実践していたり、試したけど効果がなくてやめたものなどもありますが、私にとってはプロバイオティクスが最も効果的で、ヨーグルトを毎日150グラム程度摂取しています。
おかげで腸内環境は正常になり、普段の健康維持にも役立っていて、一石二鳥!! これも最適化でしょうか??

さてタイトルにあります、花粉対策の最適化ですが、
これ以上ない最適化を以前ニュースで見ました。

それは無花粉スギの開発に成功したというものです。
徐々にこのスギに植え替えを進めていくそうで、
そもそも花粉が無くなるわけです!!
これはすごいexclamation
まさに最適化exclamation×2

・・・・・・ちょっと強引でしたねたらーっ(汗)


将来スギ花粉が無くなり、
春が待ち遠しいと思える日が来るのを楽しみにしたいと思いまするんるん

posted by 管理人 at 15:33 | Comment(0) | 日記

2009年03月03日

キャッシュ

こんにちは「オクダ」です。
気が付けばもう三月exclamation
今日はひな祭りですね揺れるハート

最適化の話が続いているので今日はキャッシュについてお話ししましょう。
コンピュータにはキャッシュという概念が必要不可欠です。
一般的にキャッシュといえばCPUが持っているメモリキャッシュでしょう。
最近では一次キャッシュ、二次キャッシュなどがあり容量が多いほど良いとされています。
近年、CPUは技術革新と共に高速化してきました。新幹線
メモリも同様に高速化していますが、CPUに比べるとその進化のスピードは遅く、どんどん取り残されています。電車
CPUがメモリとやり取りすると、メモリの仕事が完了するまで待つことになります。
せっかく高速化したCPUも、メモリに足を引っ張られて力を発揮できなくなってしまいます。
そこで、メモリより高速にやり取りできるキャッシュというメモリを用意し、足を引っ張られないようにしようという作戦が考え出されたのです。ひらめき

皆さんが自宅の机で作業している時、何か調べる必要があるたびに図書館に出かけて本を探し、内容を確認して帰ってくる、、、、なんて考えられないですよね。
本を借りておけばいちいち図書館まで行かなくてもいいし、本棚から出して手の届く所に置いておけば時間を節約できます。
机の上に開いて置いておけば、すぐ読む事が出来ます。
全て完璧に暗記してしまえばパーフェクトですexclamation×2
しかし、図書館の本全てを借りてくることは不可能ですし、本を広げる机は有限です。
広すぎる机に本を広げても逆に効率を落とすことになります。
図書館の本を全て完璧に暗記することが出来ますか?

このように時間的、空間的に非効率なものを必要な分だけ手近な所に用意し、効率的にしようというのがキャッシュの基本的な考え方です。
コンピュータの世界では、メディアorネットワーク、ハードディスク、メモリ、メモリキャッシュ、レジスタの順にキャッシュしていきます。
それぞれの場所は有限なので、当面使わなくなったモノは必要なら情報を更新して元の場所に返してあげたり、捨ててしまったりします。
その間、圧縮などを組み合わせ、多くの情報を効率的に扱うよう頑張っているのです。

キャッシュという考え方は日常生活でも自然に使っています。
お出かけする時に必要な物だけカバンに入れたり、銀行からお金をおろしたり。
食材を買ってきて冷蔵庫に保管し、料理の時に取り出すのもキャッシュです。

三月になって春到来です。
タンスやクローゼットにある冬服や、冬用の布団、鍋セットなんかも、そろそろ不要になってくる頃です。
必要なら圧縮(アーカイブ)して、押入れの奥にしまい込んでしまえばいいのです。
今週末はアーカイブしておいた春服を出して、春を感じに出かけましょう!晴れ

posted by 管理人 at 15:20 | Comment(0) | 日記