C++

2006年06月16日 金曜日

Excel2007を評価中

体験って何だ・・・ というのは置いておいて、Excel2007 Betaをインストールしてみました。(正確にはOffice2007 Pro Betaだが)
Excel2007
メニューがなくなってリボンと言う奴になりました。最初は手惑いそうだけど操作自身は本質ではないし、まあ慣れれば気にはならないかも。マウスでオペレーションする方向になったような気はする。ちょっとしたことをするにもいちいち探索することが多いが、右クリックでうまく乗り切れそうではある。もうプルダウンメニューに飽きたし、IE7もそんな感じなので、Vistaではだいぶんかわるのだろう。とりあえずいろいろつっこみどころ満載のExcelで遊んでみよう。ざっくり使えるように設定の変更。

2006年01月01日 日曜日

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

ここを読んでくれているみなさん、僕の写真を楽しんでくださるみなさん、昨年はお世話になりました。今年も変わることなくよろしくお願いします。毎年同じですが、「一年の計は元旦にあり」と言うことなので、今年はどのような戦いを展開するか、「戦いの軌跡」と言う題にしているので、戦術や戦略についてざっくりとまとめておこう。

2006年の展望

はじめに概況

2006年の戦いを進めるために、昨年の反省点を元にまぁいろいろ考えてみよう。昨年の正月同様前の会社の上司の言葉を借りることにして、本業はともかく少なくともプライベートな方面では、_攻めと成果にこだわっていこう_と思う。まぁ他にも手をつけていきたい物はあるので、少しずつ新しいことをしていきたいなとは思っている。

2005年12月31日 土曜日

今日で2005年もおしまい

毎年こんな見出しで大晦日の日記を書いているわけだが、ついこないだ2004年もおしまいとか言う記事を書いた記憶がと思ったら、2003年もおしまいとか2002年もおしまいとか言った記事を書いたのも最近のような気がするのは気のせいではない。今年は久しぶりに落ち着いた1年と思っていたのだが、4月から勤務地が変わったので、またまた人間関係もがらっと変化して、めまぐるしい変化があった1年だった。気が付くともう今年もおしまい。今年お世話になった方々はいっぱいいて名前を挙げきれないが、今年1年本当にありがとうございました。来年もよろしくお願いします。
大晦日と言うことで、行く年に思いをはせ、今年はどういう戦いの1年だったか、今年の戦術・戦略とその戦いの成果を主要な分野別にまとめておこう。(と、ほぼ毎年と同じ文章にしてみた。こういうのは毎年そろえておいたほうがよいもので、断じて_手抜きではない_。)

2005年の総括

はじめに概況

2005年の戦況がどのような物であったか述べていくことにしよう。今年は年頭にたてた重いとは全く別なところでばたばた対応させられた1年で気が付いてみると私生活では半分引きこもりっぽい1年となってしまった。全く持って何をやってきたんだかという1年であった。まぁぼちぼち今の生活に落ち着いてきた感はあるので、来年こそ前の会社の上司の言葉を借りて、本業もプライベートも_攻めと成果_にこだわっていこうと思う。

2005年11月22日 火曜日

なんでもかんでもExcel症候群

何でもかんでもPowerPoint症候群の弊害を日記で書いたのだが、それよりも世の中に広く広まっている病的な物と言えば、_なんでもかんでもExcel症候群_であろう。とにかく通常の表だけに飽きたらず、提出書類から報告書まで_何でもかんでもExcel_なのである。つまり「何でもかんでもExcel症候群」とはExcelだけですべての仕事が完結してしまう恐ろしい病気なのだ。
その病巣の由来を簡単に予想するとすれば、子供の頃に升目の入ったノートで漢字の書き取りをやらされ(つまりカーニングとかに無頓着になる)、読書感想文などの類は原稿用紙で書かされ、漢字は少ない文字数で情報量を詰め込めることからすっきりとした表が書きやすく、何でもかんでも_表にしないと気が済まない_という日本人の悲しい習性に由来する物であろうと思うのだ。
まぁUnixでEmacsしか使わないというのと似たような話ではあるのだが、典型的なEmacsユーザーが扱うのは汎用的なテキストファイルであり、Emacs LISPでがんがんプログラムを書く(設定ですらLISPを書かねばならないので、多少は誰でも書く物だ)人が多い用に思われる。Excelの場合は、XLS形式という特殊なフォーマット(最近のはXMLなのか?)を用い、適当なワークシート関数などを表層的に使いこなしている人が多く、Excelの基本技とも言えるピボットテーブルとかソルバーを使いこなしている人がどの程度いるかと問えば、結構怪しい物だ。
まぁ会社で働いているとこういう病的な世界と常に隣り合わせであり、いつも精神汚染を受けているのであるが、これを前向きに楽しむにはどうすればいいか? ということに焦点を絞り込んで生活しないとやってられないと言うことになるであろうか。
そんなわけでExcelをちゃんと使いこなすにはVBAで遊びまくればいいのであるが、テキストファイルとのつきあいもやめられない。Unixな環境に一度でも触れてしまうと、VBAのお気軽さを楽しんでいても感じる最大の問題点は_正規表現が使えない_と言うところがなやましい。これまで正規表現(とハッシュ)を使うためにVBAからだと駄目だと思い、Active PerlとかActive Rubyとか非VBAでCOMオブジェクトをさわれる言語を選択していたのであるが、書いたプログラムを使ってもらうのに_わざわざPerlだのRubyだのをインストールしてもらわねばならない_という痛い問題があった。Windowsで全然閉じていないのである。Mac OSXみたいにPerlとかRubyがインストールされていればこんなことは考えなくて良いのだが、PerlやRubyを使うのは_Windows的なやり方ではないのである_と言う結論に落ち着いた。
Windows的にどうすればいいのかと言う話なのだが、結局のところ現在のほぼすべてのオフィスにあるWindows環境で前提として良さそうな物は、Internet Explorer 6 SP2とExcelであろうと言うことになる。いろいろ調べているとIE5以降だと、WIndows Scripting Hostが使える。_まてよWSHにはたしか正規表現オブジェクトがあったぞ_と思い出して、さらにCOMで呼び出せるじゃんと言うことを思い出したので、一気にこの方面の悩みが解消した。要はWSHの正規表現オブジェクトをVBAのオブジェクトにしてしまえばいいのである。なんてこったい。こんなので数年悩んでたよ。とりあえず、あるディレクトリにある複数のファイルを選択して、そのすべてのファイルに、入力したパターンマッチをして置換を行うVBAプログラムを書いてみよう。

2005年10月26日 水曜日

Visual C++ ToolkitでSTLPortとBoostを使えるようにする

まず最初に、お手軽にBoost+STLPortを使うなら、断然Debianでapt-getすることをお勧めします。apt-getさえしたら自動的に使えるようになります。それにもかかわらずVC++2003 Toolkitをインストールしてみた理由は、_VC++2003の方がC++98の準拠度が高そう_という単純な理由だったりする。Boostのサンプルプログラムを何個かgcc4でコンパイルしてみたのだけど、コンパイルできない物があったので、リファレンスとしてもう一つコンパイラが欲しくなったというわけだ。
そんなわけで、役立つかどうか知らないけどインストールのメモ。基本的にドキュメント通りインストールすればいいのだが… いろいろ落とし穴はある。

2005年10月22日 土曜日

今日は撮影に出かける

今日はあいにくの空模様だったのだけれど、ののさんより「蕎麦を食べつつ撮影してみませんか?」という蕎麦好き僕にとって嬉しい撮影会に誘われたので、行って来ました。今日のモデルはシホさんです。肌寒い中がんばっていただいたおかげもあって、気が付いたらメディアをほぼ使い切っていました。これまでこんな勢いで撮影したのは無いかもしれない。
今回の撮影ではポートレートを取り始めた頃のような初心に返った撮影をしてみたんですが、最近こういう撮影を忘れていたなあと楽しさを再発見しました。素敵な表情をくれたシホさんに感謝です。楽しい一日でした。よく考えたらシホさんと長時間話をするのは今日が初めてっぽい。
シホさん その1シホさん その2
今日の昼ご飯は深大寺でお蕎麦をいただいたのですが・・・ 田舎蕎麦を頼んだのに細打ち麺の方がきてしまったじゃないですか!まったく、もぅ。 まぁ食べてみたところ蕎麦の香りはこっちの方が強く感じたので、_結果オーライ_ということで良しとしよう。ここは良い感じのお寺さんなんですが、駅から遠いので1年に1回くらいしか行けません…
いつも撮影に誘ってくださるののさん、TOSIさん、肌寒い中がんばってくれたシホさん、今日は1日どうもありがとうございました。

2005年09月29日 木曜日

Windows Programming in C++

流れが速すぎて、あんまりまじめに勉強したくないんだけれど、C++によるWindowsプログラミングを10年ぶりくらいに再開してみました。とはいえ、今のところはDLLが書ければよいかと言うレベル。DLLを書くのも結構かったるい。(忘れてしまった自分も悪い。)
ついでなのでGUIを持ったプログラムを書けるようにもなりたいと思いたった訳だけれど、周りの環境を調べてみてどう攻めていこうか考えてみる。学習曲線はC++の場合そんなに急ではないので、年単位で時間ががかることを前提に考えることとすると、Windowsに限定して考えれば現在身の回りで.netを使える環境は自宅のPCだけという惨憺たる状態。とてもツールとして使って貰うようなプログラムを.netで書ける状態にない。と言うことで、Win32環境でオーソドックスにC++で攻めるのも悪くはあるまいと思ったわけだ。
MFCはずいぶん前に挫折した痛い経験があるので、それ以外のフレームワークを探してみる。Doc-Viewというスタイルは感銘はするが、常にDoc-Viewを必要としているわけでもないので、今回はこれを迂回してATL(Active Template Library)/WTL(Windows Template Library)で遊んでみようと思う。すっかり廃れてしまった感のあるATLなんですが、ATLだけでGUIなプログラムはかけなかったなと言う記憶があって敬遠していたが、ATLを補うGUIテンプレートライブラリがWTL(Windows Template Library)として、いまやMSのオープンソース戦略の一環として配布されているので、これでいいのかもと思っています。(ATLはそうではないので困ったなあと言う問題はあるのだけど。) MFCと比べると、Doc-Viewを強要されない(ViewはあってもDocはない)、ヘッダだけで構成されている(templateだから当たり前か) 喞ぢでプログラムを書いていた時代を知っていれば何とかプログラムが追える、というようなもので、何とか遊べそう。後はなんと言っても、_多重継承とtemplateを使いまくり!_というC++フリーク向けのライブラリであったりもするので、サンプルのソースを読んでいても楽しい。ぼちぼち勉強してみよう。参考となりそうなサイトをメモ。

2005年07月13日 水曜日

FFXI廃人人生54日目

今日も誘われることの無かったすごく暇な一日。誘われないのでこっちから誘ってみるかと思ったのだけど、後衛が全然いないので、パーティを作ることすらできず… なんだか挫折しそう。

久しぶりに数値計算で悩む

今日は久しぶりに数値計算(とは言っても回帰分析)のプログラムを書いてました。最近Delphiを習得する必要性が出てきているので、昔書いたライブラリをPascalに移植中。やっぱり新しい言語を学ぶには以前書いたプログラムの移植が良いのかなと思うのだけど、これだと新しく覚える言語のスタイルが身に付かないのよね…
で、2変数の1次式の回帰分析をやっている分には全然問題ないんだけど。3次式にしたとたんに妙なことに気が付きました。一応倍精度浮動小数点型を使っていたんですが、まるで有効桁が足りない。きっちり考えるまでもなく、自明に足りない… うーむ、4倍精度な浮動小数点型がほしい状態。このライブラリ書いたときはそんなことは想定してなかった。結局外側はVBとかDelphiで書いて、計算部分はC++とかで書けということなのかなあ。ちょっと思案中。

2005年01月21日 金曜日

Bjarne Stroustrup / 「C++の設計と進化

購読しているMLではないけれど、επιστημηさん主催のC++:language&libraries(cppll)メーリングリストで案内されていたので購入してみた。(このMLはFreeMLで運営されているので購読してない。アーカイブをROMしている。) C++でプログラムを書くことがなくなって久しいのですが、前から興味があった本なので。
επιστημηさんが監修、岩谷 宏さんが訳なのだが、岩谷さん以外の名前が読めない… (επιστημηさんは「えぴすてーめーさん」、Bjarne Stroustrup先生は「ビャーン・ストロウストラップ」で言いのかな? 難しい名前ですねえ。) 岩谷さんは脚注がなければ、この手の技術書の翻訳としては非常に読みやすい翻訳家さんだと思うので、主張が気に入らない自著以外は結構購入しています。
ざっくり言えば、C++の設計者であるBjarne Stroustrup先生からみたC++の歴史とも言うべき本で、何故この仕様がこうなったのかが分かる本じゃないかと思う。(たとえば演算子多重定義は制限をつけてOKとしているけど、演算子の新規定義は何故駄目なのかとか、多重継承を導入した話とか・・・) ああなるほどと思うところがあるので面白いと思います。
C++好きはもちろん、アンチC++な人もこの本を読んだ上で、何故ゆえ今のC++となったのか理解した方が良いかもしれないと思います。個人的にはBjarne Stroustrup先生やるなあと言う感じです。(失礼な言い回しかも。)
内容は前半がC with ClassesからRev.2に至るまでの歴史的な経緯、後半がRev.2からISO規格になるまでに盛り込まれた機能別なまとめになっていて、前半は通しで読み、後半は興味があるところから読める仕掛けになってます。あと前書きとしては長いけども、日本語版に特別に書き起こされたBjarne Stroustrup先生の原書が発行されてから今年までのフォロー(30ページくらい)が読める。ここ10年C++の規格には大きな動きはなく、template周りでようやく仕様にコンパイラが追いついたという状況。最近の成果(Boostとか)を取り込んだ新しいライブラリを含む新規格が出るらしい(もうでたのかな)ことと、やはりSTLの登場で始まったGeneric ProgrammingがC++の重要なトピックスになった話などがたのしめる。(JavaのGenericsも少し遊んでみたけど、Iteratorの機能が貧弱であのライブラリではSTLのような柔軟な処理ができなさそう…)
まだ4章くらいまでしか読んでないが、C++がちょっぴりしかわからない僕でも読み物としてかなりたのしめるので、興味がある方はどうぞ。ページ数と情報量の割には、そんなに重たくないので通勤時でも読める印象。まぁ趣味のネタ本と言うことで。(コンピュータもので買おうと残っているのはあとはKnoth先生のあのシリーズですね。)

2004年12月31日 金曜日

今日で2004年もおしまい

毎年こんな見出しで大晦日の日記を書いているわけだが、ついこないだ2003年もおしまいどころか2002年もおしまいなんて言う記事を書いた気がするのは気のせいではない。今年は転職・引越しと人生の転機となる大きな変化のあった1年で、住環境や人間関係もがらっと変化して、めまぐるしい変化があった1年だった。気が付くともう今年もおしまい。今年お世話になった方々はいっぱいいて名前を挙げきれないが、今年1年本当にありがとうございました。来年もよろしくお願いします。
大晦日と言うことで、行く年に思いをはせ、今年はどういう戦いの1年だったか、今年の戦術・戦略とその戦いの成果を主要な分野別にまとめておこう。(と、ほぼ毎年と同じ文章にしてみた。こういうのは毎年そろえておいたほうがよいもので、断じて_手抜きではない_。)

2004年の総括

はじめに概況

2004年の戦況がどのようなものであったか述べていくことにする。前の会社の上司の年賀状には_今年は攻めと成果_と書かれていたのだが、個人的には攻めに攻めた1年だったかと思う。アクティブに変化を求めて行動したが、いまいち成果があったとはいえない。まぁ来年あたりから取り返していきたい。今年から技術系よりは研究系に寄った立場になったので、より注意して形になるように成果を残さねばと思うのである。(これは特に本業について言える話。)
経済的な状況は現段階でほぼ解決した状況(今年はでかい収入と出費があって、これまでのごたごたはほぼ解決したといってよい) 今後は多少余裕はできると思うので今年あたりからちゃんと貯蓄に励もうと思う。なかなか自力で解決できないのだが、残りは車のローンくらいだし…