大変?楽しい?どっちかなぁ~

おはこんばんちは~ポチャリ系のプログラマーのシュウショウです。とても久しぶりの私のフレッシュマンブログ記事ですね。
(「おはこんばんちは」とは、おはよう+こんばんは+こんにちはですかなぁ、YouTubeで聞いた言葉ですが、みなさんがこの記事を読むのは朝、昼と夜全部可能性あるから、言ってしまいました。まぁ、私がこの記事を書き込んだのは朝なんですが。)

この前、私が自分の名前を日本人の皆に紹介した時に、日本人のみなさんが最初ほとんど「えっ」って言われて、「シュウショウと申します」ともう一回繰り返しました。私の名前を日本語にすると姓と名が同じような発音でおかしいでしょうね、「シュウ」と「ショウ」一緒にすると言いづらいね、私もそうと思います。

ちなみに、私の名前のアルファベットは「ZHOU XIAO」です。日本のみんなにとってますますおかしくなると思うよね。だって「Z」から始まる日本人の名前あまりないと思いますから。でもね、最近仕事であるアメリカ人に自分の名前を紹介したら、その人に「Oh, Syu, I like your name」って言われて、ちょっと嬉しかった。自分の名前がおかしいのではなくおもしろいの方ですね。

また脱線してしまいました。(ちなみに、脱線という言葉は私たち2013年度新人の「お父さん」的存在の松平キュンが教えてくれたんだ、由来は面白そうです)、今回は仕事のことを話そうとしていた。

今、私が担当している部分はUIです。UIとは、User Interfaceの略称です。簡単に言えば、ゲームとユーザの間での情報をやりとりするためのものです。最初の時、私は簡単なぁと思ってなめてました。単なるHPゲージやアイテムの数などを表示するぐらいだけだと思いました。でも実際やったら、HPゲージやアイテムを表示することさえもできませんでした。失敗しました。甘いでした。大変でした。UIのプログラミングの仕事をなめた私がほんとにバカでした

UIのプログラミングが結構複雑で難しいですってヴァンキッシュでUIのプログラミング担当でしたOさんに言われました。HPゲージやアイテムだけではなく、タイトル画面、ポーズ画面、メニュー、ミニマップなどすべてはUIなんです。そして、それぞれのメモリを確保するタイミングやソースコード、全体的な構造など、すべて把握しなければなりません。UIのオブジェクト間の関係とか、HUDがどういうふうに動いているとか、私全然考えなかったんだ。だから、私がダメでした。

仕事ですので、指示された任務を完成しなければなりません。自分も悔しくてしょうがないから、それらの問題を解決しないとイライラします。他人のソースコードを読んで理解するまでいっぱい調べました。時々隣の先輩に聞いたり、ググるしたり、なんとなく他人のプログラムを理解しました。
で、そのプログラムを理解したうえで、自分のカスタマイズクラスを作るのが始まりました。作って、間違えて、もう一回再設計して、またもう一回作った。こう言う風に3、4回くらい繰り返して、やっと自分が満足したものをできました。

今の私は、もう他人が書いたソースコードを理解しましたから(100%ではないですが、少なくとも自分の担当している部分に関わってるソースコードは理解しました)、最初のHPゲージやアイテムなどの表示することはもうできます。自分が考えたプログラム構造も今きちんと動いています。新しくきた指示もすぐ対応することができます。最近仕事また楽しくなってきました。時々、自分が作りたいものも作れるし、学びたいことも学べるから。やっぱりこんな仕事が好きです。

大変?楽しい?今の仕事が大変で楽しいと私がそう思います

PS:ちなみに、会社の下のグランドにクリスマスの雰囲気を感じてる。ちょっと早いですが。