TOPに戻る
鬱るんです
躁鬱病のITエンジニア「はまー」が心と体の模様を記した雑記帳。 大手IT企業で心身ともにぼろぼろになり退職した後、ほそぼそと働いたり事業を立ち上げようとして頓挫したり、作業所に通ったり障害者雇用で働いたりと紆余曲折したが、今は無職な毎日。

今日は7時頃起きたっけな。お休みだから目覚ましはセットせずに寝たが、自然にこれくらいに目が覚めるのなら、まあいいだろう。朝食を食べて、さっそくお勉強。昨日買った本はとりあえず置いておいて、まだ読みかけの「初めてのPerl」を読む。

どうもPerlという言語は曖昧さというか、いろんなところを省略したり別の書き方ができたり、いやそれは他の言語でも同じなのだが、「省略の美学」というのがあるらしく、Perlは特にすさまじい。この本を読んでいると、ひたすらプログラミングのタイプ数を減らせて速く作れるから、こういう書き方ができる、と書いてある。

しかしなあ、その「省略の美学」のせいで、ろくに勉強もしないまま他の人のプログラムを見よう見まねで作り始めた自分は???????の部分がいっぱいあって、実に困っていたのだった。

小学生のときにBASICから入って、アセンブリ言語、C言語、大学では情報工学科でFortran、PASCAL、再びアセンブラ、AWK、シェルスクリプト、LispやらPrologなどのAI系のものまでやらされた。就職してからはC言語を独自にオブジェクト指向に拡張した言語を使ってオブジェクト指向プログラミングもやっていたし、最近では趣味でPHPとか他のスクリプト言語もやったし、たいていの言語はソースを読んだらだいたい何をやっているかわかる自身はあったのだ。

しかし、幸か不幸か私はWeb系の仕事とは縁がなく、CGIを作ったりしたこともなく、Perlには手をつけたことがなかった。別にPerlはCGI専用の言語ではなく、強力なスクリプト言語なのだが、どうも「PerlでCGI」というのが一時期はやったせいか、Perlには縁がなかった。

会社でも使う場面はなった。ちょっとここの処理が簡単そうなので、勉強がてらPerlで書いてみたい、とリーダーに言ったことがあるが、みんなが知らない言語で書かれてもメンテができないからやめてくれ、と言われる始末。

CGIを作れる環境もなかった。自分のPCにApacheでもインストールしてActivePerlでもいれるか、Linux環境でも構築すればよかったのかもしれないが、それをやったのはつい最近のことだ。それもWebアプリはPHPでやっていた。

話はだいぶ遠回りしたが、要は、Perlは触ったことがなかったが、

「たいていの言語は読んだら何をやっているか想像できて、それを元に頭の中でリバースエンジニアリングをかけて文法を推測する」

ことができる自信があったのにPerlは全然わけわからん、という状態だったのだ。

とりあえず今日は「初めてのPerl」を読破しよう、と思っていたが、9時くらいにちょっと疲れを感じて横になったら、そのまま11時くらいまで寝てしまった。やっぱり疲れは溜まっていたんだな。

午後から勉強を再開するも、睡魔との戦い。いっそ寝た方がいいのか。でも昼間に寝たら、夜に眠れなくなるので、なんとか体をやすめつつ寝ないで頑張りたい。休憩を多く入れ、伸びをしたりストレッチをしたり深呼吸をしたりして本を読んでいった。私が理解できてなかった「省略されていたものたち」の正体がやっとわかってきた。

とりあえずWebアプリ用のフレームワークを用いての開発なので、ファイルシステム管理やプロセス管理は飛ばして、なんとか最後まで読んだ。明日は昨日買った「続・初めてのPerl」と、今日の朝に届いた「Effective Perl」をつまみ食いしながら読むことにしよう。「Effective Perl」はより実戦的な内容で、これも非常に参考になりそうだ。

う〜ん、いろいろ詰め込みすぎて頭がパンクしそうだが、いろいろ覚えられるということは、自分のスキルがあがるということだから、どんどん詰め込んでいこう。そして作って作って作るのだ。自分の作った物が、ソフトウェアというバーチャルな世界ではあるが目に見える形になって動いている、というのはとても楽しいことだからやめられない。

今日は6時半頃に起きた。顔を洗って朝食を食べながらテレビを観てると、あれれれ首都圏の自動改札が一斉に障害だと?JRも私鉄も?さてはPASMOでのシステム変更におけるバグだろうか。駅がパニック状態になっていると嫌なので、7時過ぎにさっさと家を出た。いつもは7時50分に出てるのだが。

駅は思ったほど混乱していなかった。みんなちゃんとニュースを見てきているのかな。自動改札は通り抜け状態。テレビカメラが来ていたよ。会社には8時に着いた。さっそく昨日の続きのプログラミングに入る。

今日はなんだかんだユーザからの依頼を処理しつつ、あ〜なかなかプログラミングは進まない。なんせいきなりオブジェクト指向でCatalystというフレームワークを使ってPerlのプログラミングをしているのだ。オブジェクト指向はわかっているが、Perlの文法やら何やら、まだまだ勉強b不足。他のコードを見て、なんでここにバックスラッシュが入るのかがわからんけど、そのまま真似しているという状態。

会社にあったオライリーの「初めてのPerl」をとりあえずだ〜っと読んでいるのだが、リファレンスとかオブジェクト指向とか、その辺のところまで書いてない。あくまでもこれは初心者向きなのだ。いや、実際初心者なのだがプログラマーとしては初心者ではない。とりあえずもっと詳しい本がほしい。そう思って先日このブログのコメントで紹介してもらった「Effective Perl」という本を、昨夜Amazonで注文した。

今日は通院日。会社をあとにして病院に着いたら、今日も激混み状態。だから今日もいったん外へ出て、その足で近くにある大きめの本屋に行ってみた。コンピュータ関連のコーナーを見ていたら、オライリーのシリーズをまとめたコーナーがあった。う〜ん、これ全部ほしい、いつもそう思ってしまう。

その中で、今まで存在を知らなかった「続・初めてのPerl」という本を見つけ、手にとってぱらぱらと見てみた。おおおおおお、私が知りたいと思っていたことがいっぱい書いてある。これは、これはぜひとも手に入れたい。

う〜ん、どうしよう。Perlの本は昨日Amazonで注文したところだし、そもそも仕事で必要な本は会社で買ってくれるし、でも会社で買うとなると、月曜日に許可をもらって発注して、手元にくるのに1週間はかかる。でも、今読みたいのだ。この土日に読んでしまいたいくらいだ。と言うわけで自腹で購入。こういう専門書は財布に優しくないよ、やれやれ。自腹で買って領収書を持っていって精算できるといいのになあ。うちの会社ではそれはだめなのだ。

マックで夕食を食べてから病院へ戻った。まだまだたくさん待ち時間があるので、さっそく買ってきた本を読み出した。リファレンスはまあ思った通りのものだったが、そうかバックスラッシュがそれであったか。その他にも読んでいるといろいろと謎が解けていった。これは読むべし読むべし!この週末はお勉強に徹するのだ。

今日も6時にばっちり起床。よい傾向だ。

しかし、今日も昨日ほどではないが、ずるずると19時くらいまで仕事をしてしまった。期限はないが、できるだけ急いで作らないといけないWebアプリの作成をしている。

しかし、初めて使う知識が多く、他のプログラムを真似しつつ何冊もの本をつまみ食いしながら、えっさほいさやっている。なかなか進まない。昨日はなんとかDBから認証無線LANのユーザテーブルから全レコードを取りだして、必要なカラムだけの一覧を表示する画面ができた。エラーハンドリングは後回し。

今日はなんとかそこから各レコードの詳細画面を表示する画面を作った。しかし、ちょっとうまくいってない。あるIDを元に他のDBのテーブルからレコードを拾ってきて、その項目を埋め込む部分がうまくいかん。デバッグコードを仕込もうとしても、あれ、ここの書き方どうするんだっけ?いかん、文法がわからん〜。

というところであきらめて帰ってきた。明日はその続きをやろう。明日は通院だが、また待たされるだろうからその間に勉強しよう。この週末も勉強だあ。

うわ〜ん、またけっこう残業してしまったよう。別に早く帰れるのに。今日から本格的にプログラミングに入ったら、これがおもしろくて、やめられない止まらない。気がつくと定時を過ぎていたが、もうちょっと、もうちょっと、え〜ん、区切りのいい所なんかないよう。デバッグを始めるとエンドレス。ああ、もう一人の自分が出てきて自分を引っ張って帰りたい。出でよドッペルゲンガー!あ、見たら死ぬんだっけ?

巷で流行っているらしい。妻に聞いて初めて知った。

なごむ〜。