10

去年の夏から書いていた本がやっと出ます(「世界一わかりやすいObjective-Cプログラミングの授業」)。

世界一わかりやすいObjective‐Cプログラミングの授業

世界一わかりやすいObjective‐Cプログラミングの授業

[rakuten:book:14341694:detail]

Objective-Cと言えば、NeXTstepの主要な開発言語に採用され、それがそのままMac OS Xに引き継がれ、いまではiOSの開発言語にもなったプログラミング言語です。iOS、つまりiPhoneiPadiPod touchのアプリケーションを作るときに使われる言語です。ある意味、流行りものの言語かも知れません。

で、この本なのですが、最初に断っておきますが「この本を読み終わるとiPhone(iPadでもiPod touchでもいいですが)のアプリケーションが作れるようになる」というものではありません。おもに言語とライブラリのより基礎的な部分を解説している本です。iOSアプリケーションの入門書はいくつか出ていますが、ページ数の都合でしょう、たいていの本は基本的な部分をかなり端折っています。それに対して、Objective-Cの基本的な部分の入門書、というのが本書の位置づけです。

本書は「世界一わかりやすい〜プログラミングの授業」シリーズの1冊です(「世界一わかりやすい」というのはアレですが、私が命名したわけじゃなので……と言い訳しておきます)。このシリーズは基本的には見開き2ページで1テーマ、左ページは(会話での)解説とコード、右ページは手書き風の図になっています。本書もこのフォーマットを踏襲しています。

左ページの解説は段組(2段)してあります。ですので1行の文字数はかなり少なくなってしまっています。でもって、Objective-Cのクラス名やメソッド名(特にメソッド名)はすごく長いものがあります。たとえばwriteToFile:atomically:encoding:error:やcreateDirectoryAtPath:withIntermeditateDirectories:attributes:error:なんていうメソッドがあったりして、クラス名やメソッド名の途中で改行されないように1行に収めるのにかなり苦労しました。

だいたにして、なんでこんな長いメソッド名になるのかというと、それなりに理由があって、メソッドを呼び出す式の、特に引数の書き方がC++Javaとはかなりちがっているからです。たとえばcreateDirectoryAtPath:withIntermeditateDirectories:attributes:error:というメソッド、メソッド名を見ればわかるように(ファイルシステムの)ディレクトリを作成するメソッドです。このメソッドを呼び出してディレクトリを作成するには、たとえば次のように書きます。



[fm createDirectoryAtPath:@"/Users/lepton/aaa/bbb/ccc" withIntermeditateDirectories:YES attributes:nil error:NULL];

なにやら怪しげな書き方です(C++Javaに慣れている人にとっては)。Objective-Cのメソッド呼び出し(と言うか「メッセージ送信」と呼ばれる)は、C++Javaのように「オブジェクト.メソッド(引数)」のように書くのではなく、「[オブジェクト メソッドと引数]」と書きます(まあ正確に「[レシーバ メッセージ]」と書くべきなのですが)。上のメソッド呼び出しでfmはオブジェクトを表しています。これはNSFileManagerクラスのインスタンスです。このNSFileManagerクラスにcreateDirectory〜(長いので後略)メソッドががあります。ここはあまり問題は無いかと思いますが、メソッドを呼び出している部分が問題です。C++Javaならば「メソッド名(引数並び)」のように書くわけですが、Objective-Cではメソッド名のコロンの後ろに引数を(1個)書きます。ですから、メソッド名に含まれるコロンの数だけの個数の引数があることになります。でもって、コロンの前の部分、たとえば「AtPath」とか「withIntermeditateDirectories」とかが引数の意味を表すことになるわけです。そんなものがついてくるために、特に引数の多いメソッドの名前は長くなってしまうわけです。

というような話は本書を見ていただくこととしまして(←営業)、とりあえず新しい本が出ます、というご報告でした。

そうそう、今回のタイトルの「10」、この本が、私が(Leptonという名前で)出した10冊目の本だからです。せっかくなので並べてみました。

RAID 5で

某所にて。久しぶりに聞きました、このセリフ。

「サーバはRAID 5でバックアップしてますから大丈夫です!」

いや、だからさ、RAIDはバックアップじゃないってば。しかも、よりにもよってRAID 5ですか。そのサーバは、どう見ても買ってから7、8年は経っているDELLPowerEdgeシリーズ。どうせ保守契約なんかしてないんだろうなあ。って言うか、そんな古いサーバ、保守契約できたっけ? RAIDでディスクの冗長化してるのはいいとして、ディスクやRAIDコントローラなんかが壊れたらどうするんだろ? 高い金出して修理してもらう? 部品が無くて修理不能になったらどうする? 「RAID 5でバックアップ」と胸を張っていたくらいだから、本当のバックアップなど取ってなさそうだし。

そう言えば、今から数年くらい前までは、RAID 5が結構流行ってましたね。単純にミラーリングするRAID 1なんかと違って速いらしいし、容量的にも有利だし、それに「なんかよくわからないけど凄そう」だし。しかし、世の中そんなうまい話があるわけではなくて、実際には理屈どおりにうまく動かないケースが続出、みんな痛い目に遭って、RAID 1(やRAID 1+0)に移行している、というのが現状ではないでしょうか。「RAID 5のほうが容量的に有利」とは言っても、いまどきはディスクも安いですし。

ところで数年くらい前から、個人で買える数万円程度の値段のNASが出回っています。私も訊かれたことがあります。

RAID 5NASとか買って、家の中のサーバにしようかと思ってるんだよね。どう思う?」

私は止めましたよ。「RAID 5は止めとけって。何かあっても面倒見ないよ」と。RAID 5の本質的な問題点のほかにも、この手の安価なNASの場合、別の問題点もあると思います。たとえば、NASのどこか(ハードディスク以外の部分)が故障したとします。故障したものは修理できればいいのでしょうけど、故障した時点で修理が可能なのか、また費用がいくらかかるのか、という問題があります。安価なNASは保守契約も無いでしょうし、そもそも家庭用の機器で保守契約というのも。「そんなのRAID 5だってRAID 1だって、修理に費用がかかるのは一緒なんじゃないの?」と思われるかも知れません。しかし、RAID 1ならば、ディスクをNASから取り出してPCにつないで、内容を読み出すことが可能(なことが多い)でしょう。故障したNASのハードウェアは捨てることになりますが(修理費用を考えたら、捨ててもたぶん損は出ない)、データは救えるはずです。でも、RAID 5だとそうは行きません。自分でデータを救うのはきわめて困難です。で、私の言った「何かあっても面倒見ないよ」につながるわけです。

インプレスINTERNET Watchなどを眺めていると、安価なNASの製品紹介記事がときどき載ります。「RAID 5も可」などと記事に書いてあります。そして、同じページにハードディスクのデータ復旧サービスをしている会社の広告が載っていたりします。なかなか商売がうまいなあ、と思ってしまいます。

今年最後

今年最後の更新です……っていうか、これが今年4回目、たったの4回目の更新ですね。四半期に一度のペースです。ううむ。

いま実家に帰っていて、そこでノートPCを使ってこれを書いています。大慌てで帰省の準備をしたせいで、ノートPCのACアダプタのメガネケーブル(ACアダプタのAC側のケーブル)を持ってくるのを忘れてしまいました。しかも、実家中を探してもメガネケーブルが1本も無いという。仕方が無いので街中の電気屋さんまで行って買ってくるハメに……自分の家なら、メガネケーブルなど、それこそ売るほどあるわけで、こんなものに金を出すのも釈然としなかったのですが、背に腹はかえられず。380円也。

それはともかく、今年はこれを含めてたった4回しか更新しなかったわけで、来年はもうちょっと頻繁に、できれば毎日……という高すぎる目標はやめて、せめて週イチくらいは、と思っています。今年も決してネタが無かったわけじゃないのですが、うだうだしているうちにネタの鮮度が悪くなっちゃって、結局そのままに。

基本的に政治ネタは取り上げないことにしているのですが、年末に話題になったことといえば、東京都の例のあの条例でしょうか。これは政治ネタとは言い切れないような気がしないでもないようなネタなので、まあいいでしょう、ということで。思ったことを順不同で箇条書きにしてみます。

  • 自分自身として規制に賛成か反対か、といえば、そりゃあまあ限りなく反対に近いでしょうね。
  • でも、規制や制約(それは必ずしもお上からのものだけではなく)を跳ね除けるパワーが、時にはいい作品を生むこともあるんじゃないのかなあ。
  • 「芸術性」があれば対象外らしいけど、それってどうやって判断するんだろ? 時を経て残ったものが「優れた作品」なんじゃないのかな。
  • あ、「芸術性」と「優れた作品」は別概念なのかな? ある意味「芸術性」なんてどうでもいいけど「優れた作品」を後世に残すことは重要なんじゃない?
  • 時を経ないと「どの作品が後世に残る優れた作品」であるかわからない以上、どんなに「くだらない」「つまらない」作品だって、とりあえず後の世に残しておいたほうがいいと思うんだけど。

ほかにもいろいろ書いたんですけど、消しました。なんかありきたりでしたし。

さて、話は変わりまして、今年は一冊も本を出すことができませんでした。本当は今年中に出すつもりだったのですが、なかなかテーマが決まらず、結局予定がずれ込んでしまい、次の本は来年の1月になりました。この件はくわしくは後日に。

なんかだらだらと書いてしまいました。これからはもうちょっと頻繁に更新したいと思います。では来年もよろしくお願いいたします。

touch

iPod touchを買いました。これまでは第2世代のiPod nanoを4年間使っていました。そのiPod nanoが壊れた、とかそういうわけでも無いのですが、いまやっている内職で、iOSが動くのがあったほうがいいかなあ、と言い訳しつつ、先日の新製品発表と同時に予約していたのです。

まあ、iOSが動くものが無いと内職のほうがまったく進まない、というほど重要では無いのですが、一つくらい持っていてもいいかなあ、ということで。iOSが動く機械といえば、iPhoneiPadiPod touchと3つあるわけですが、

  • iPhone
    いま、ウィルコム(Hybrid w-zero3契約中、とりあえずメインで使用中)、ドコモ(もともとは海外(GSM)での使用のため、その他ウィルコムの電波が届かないところ用、最も安いプランで使用中)とある上に、さらに回線の契約をするのもなあ。最低2年間くらいはお布施しないといけないみたいだし。
  • iPad
    でかくて、自分としては使い道が……保存してあるさまざまな資料を参照しながら原稿書きとか難しそうだし、これならノートPCのほうがいいや。

ということで、自動的にiPod touchに決まりました。まだ使い始めて一週間ですが、

  • これ、「音楽プレーヤー」なの?
  • 性能を見たら小さくて軽いと言えるんだろうけど、音楽プレーヤーとしては(nanoと比較すると)重くてでかいよなあ。
  • 操作性はさすがに洗練されているし、ストレスはほとんど感じないかも……とくに、Windows moblieを積んだHybrid w-zero3と比較したら雲泥の差。なんでここまで違うんだろう?
  • 音楽プレーヤーとしての操作性はnano(旧製品のタッチホイールのやつ)のほうが上だと思うなあ。
  • メモリはでかいに越したことはないだろう、と64GBモデルにしたけど、これだけがんじがらめで好きなファイルを入れられない(入れづらい)と、そんなにメモリーは要らなかったかも。
  • まさか、デジカメから直接画像を読めない(ですよね? 私の勘違い?)とは思わなかった。
  • 表も裏も手の油でベタベタ。ケースは必須?
  • 通信が必須のアプリが結構多い。外で使うことを考える(というか持ち運び前提だし、このサイズ)とiPhoneのほうがやっぱり便利? でもお布施がなあ。

最後の通信環境については、ウィルコムhybrid w-zero3が「モバイルルータ」として使えるので、遅くてもよければPHS回線(基本料金だけでどれだけ使っても定額)またはドコモ回線(月額上限5250円)を利用することでしのげなくはありません。ただPHS回線は本当に遅いので……先日、PHS回線接続でGoogle Earthを見たら、それはもう悲惨でした。

ラー油

約半年ぶりの更新です。もう、誰も読んでなかったりして……。


去年の春に石垣島に行ったときに辺銀食堂の石垣島ラー油なるものを買ってきました。その名前は前々から知っていたのですが、うちの近辺では手に入りませんでしたので、せっかく石垣島に行ったのだから、ということで3本ばかり買ったわけです。これは香りもよく、マイルドな味で、結構気に入りました。ただ、ほとんど辛くないため、消費量が激しく、小瓶のためあっという間に無くなってしまい、入手性もよくないため、常用はできないなあ、と。あ、値段も800円(確か)と高いですし。

そんなおり、近所のスーパーで見つけたのが桃屋辛そうで辛くない少し辛いラー油石垣島ラー油と同系統の、具沢山で、ほとんど辛くないラー油です。石垣島ラー油よりは香りがよくないと思いますが、まあ値段が300円ちょっと(確か)でしたし、入手性も悪くないのでときどき買っていました。……が、ある日を境に、近所のスーパーの棚でそのラー油を見かけることができなくなってしまいました。なんか「具沢山であまり辛くない『食べるラー油』」なるものがブームになっちゃったんだそうで、こんなことなら買いだめしておけばよかった。うわさによると、石垣島ラー油も高値で取引されていたりするそうで、こういうブームっていいことは何もないですよね。

と、ここまで書いていて何なのですが、私としては、石垣島ラー油桃屋の辛そうで(略)ラー油も、いまいち物足りなさを感じていたりします。その最大の原因は「辛くない」。いやまあ、そういうコンセプトのラー油なんだから仕方ないのでしょうけど。あまりに物足りないので、普通の辛いラー油や唐辛子と混ぜて使ったりもしました。

さて、先日、横浜中華街の萬珍樓という店に行きました。中華の店って、テーブルに醤油・酢・ラー油なんかが置いてあるのが定番だと思うのですが、この店では普通のラー油の代わりに香辣脆という調味料が置いてありました。ふたを開けてみると、見た目は例の「具沢山のラー油」とよく似ていて、思わず桃屋のラー油のつもりで醤油に大量に投入してみたところ……めちゃめちゃ辛いです、これ。最初は香りと甘みが口の中に広がるのですが、数秒遅れてガツンと辛さがやってきます。正確には「ラー油」では無いらしいのですが、ラー油の代わりに使える調味料です。

値段もそこそこだし「これはいいかも」と、帰りに一瓶買ってきた私。

御中

知り合いの子供が大学受験とのことで、なぜか願書のチェックをしていた私。

「ああ、この封筒のあて先のところ、『行』の文字を線で消して横に『御中』って書いて。面倒くさいけどそれが日本のしきたりだから」

などと言いつつ、他の大学の封筒も見てみると、中には、


○×大学入試係 御中

とあらかじめ印刷されている大学もちらほら。いちいち線で消して『御中』と直さなくてもいいから楽といえば楽ですが、こういうことが出来るのは、学校の願書の送付用封筒だから、という特殊事情によるものでしょう。

話は変わりますが、正月に実家に帰ったときに、親の携帯電話の機種変更をしてきました。いままでSoftbankの2Gの電話機だったのですが、これのサービスが今年の3月で終了するらしく、機種変更に迫られていました。しかしSoftbankには適当な機種が見当たらず、MNPNTTドコモに移行して「らくらくホン」にする、という形になりました。その機種変更の手続きは、本人たちに行ってもらうと、当人がわけがわからないままにいらないオプションとかをてんこ盛りにされたり、とかいろいろと危険性が高いので、私が代理で行くことにしました。で、代理で手続きする場合には委任状が必要になります。事前に委任状の用紙は印刷してあったので、まずは父親にその用紙に記入してもらうことにしました。

「ほれ、書いたよ」

と渡された委任状を確認してみると、あちこち抜けているところが……父親は長年事務仕事やっていた(というか今でもやっている)はずなのに……

「これでいいだろ」

書き足された委任状を再度見てみると、


株式会社エヌ・ティ・ティ・ドコモ

「あ、あのさ、ここなんだけど……」

と「行」の文字を指差すと、

「ん? なんだ?」
「いや、だからここ」
「だからどうした?」
「……」
「???」
「いや、だから、こういうところって『御中』って直すもんじゃ……」
「……」
「じゃあ、こっちで直しておくよ。『委任状は自筆で書け』って注意書きがあるけど、そのくらい大丈夫だろうし」
「そんなもん、誰も見ちゃいないって。別にそのままでいいって」
「……」
「いちいちそんな面倒くさいことすること無いんだって」
「……」
「そんな細かいこといちいち気にすること無いんだって」

そういえば、似たような話を思い出しました。その昔、職場にて上司から、

「この検収書、先に署名しておいたから、おまえが見て問題が無いようだったら、先方の営業に渡しといて」

で、その検収書を見ると、


○×△株式会社 行

私は「行」の文字を指差しながら、

「あの〜、ここなんですけど」
「ん? どうした?」
「ですから……」
「そこがどうしたんだ?」
「私のほうで書き加えておいていいですか?」
「何か不備でもあったか?」
「だから『御中』と直しておいていいですか?」
「なんだそりゃ?」
「いや、こういうところは『御中』に直すのが……」
「んなもんいいんだよ、いちいち。いいからそのまま渡せ」
「いや、でも、渡すのは私ですし」
「くだらん。誰もそんなとこ見てないって。だいたい、向こうから見たらこっちが客なんだぞ。客のほうがへりくだる必要がどこにあるんだよ」

その上司は、私が見た範囲では、その後も頑なに「御中」に直すことをしませんでした。本当はいけないのですが、私は自分で直してから渡していましたが。

返信用の封筒だの書類だのに自分の宛名を書くときに「行」と書いて、相手にそれを「御中」だの「様」だの直させる、という習慣(作法?)は、たしかに「くだらない」と言えば「くだらない」と言えなくもないかも知れません。でも、頑なに「御中」にしないのって、なぜなんでしょ? 「くだらない」「面倒くさい」「誰も見ていない」「そんなことしなくたって別に問題なんか起きないんだから」そんな理由しか聞いたことがないんですけど、そんな言い訳するくらいなら、ちゃちゃっと直したほうが早いように思えるのですが。謎です。

新年

あけましておめでとうございます。

昨年の秋ごろからほとんどここに書き込んでいませんでしたが、そのわけは、少し前にコメント欄に書きました。


秋から書くはずだった本の企画がボツになった

時間が空いたので、家の改装をすることにした

それにハマってしまって時間が取れなくなってしまった

改装と言っても、何をやっていたかと言うと、昨年中は主に、畳の部屋とカーペット敷きの部屋をフローリング床(←ってのも変な表現ですね、でも少なくとも日本ではこれで通じるみたいです)にする工事をしていました。要するに、今まで畳だったところと、カーペット張りだったところを、板張りにしたってことですね。これって業者に頼むと結構なお値段になるので、自分でやってみたわけです。作業手順等についてはここで説明するのも面倒なので、止めておきます。「フローリング DIY」などでググるとその手のサイトが数多く見つかりますので、興味のある方はそちらを参照してください。カーペット張りの部屋は、材料と道具さえ揃えておけば、素人でも週末2日間で1部屋くらいで完成できます。畳の部屋は、畳の厚みよりフローリング材の厚みのほうが薄いので、床をすこし嵩上げしないといけませんのでもっと手間がかかりますが(週末2回くらい)。

以前から、アルミなどの金属の加工はそれなりに経験があるのですが、木工は昔から苦手でした。やってみるとこれはこれで面白いです。まあ「木工」とは言っても、板を床にはまる大きさに切って並べて固定していくだけですから、難易度はかなり低いのかも知れませんが。

で、家の改装、次の予定は壁紙の張替えです。ある本を立ち読みしていたところ、次のような記述を見つけました。


フローリング工事 難易度★★★★★
壁紙の張替え 難易度★★★

星の数が多いほど難易度が高いと思われるその記述によれば、壁紙の張替えのほうが簡単そうです。でも、壁紙をきれいに貼るのは結構難しそうに思えます。私としてはフローリング工事より難しそうな気がします。

さて、話は変わりますが、本来なら今頃、ひーひー言いながら原稿を書いているはずだったのですが、書く直前になってボツになりました。最近は、以前にも増して本が売れなくなっているようで、なかなかゴーが出ません。え? 「売れなくなったのはオマエの本だけだろう」ですか? すみません。今回の企画も、固まる前にいろいろと案を出したんですが、どれもボツになりました。たとえば「世界一わかりやすい〜の授業」シリーズで、


世界一わかりやすいFORTRANプログラミングの授業

とか、さらに調子に乗って、


世界一わかりやすいLISPプログラミングの授業

とか、冗談半分(もちろん残りの半分は本気)で出したのがいけなかったのでしょうか。

とりあえず今年の予定は何も決まってない(もしかしたら最後まで決まらないかも)ですので、上記のような企画でも採用していただける奇特な出版社の方がいらっしゃいましたらご連絡ください(と、一応営業しておく)。