[buy] HDD Maxtor 160GB / メインマシンのHDDを交換した / .comMaster★★2004を受験してきました

HDD Maxtor 160GB

閉店間際の時間にふとHDDが欲しくなり、急いで出かけて無事購入。TSUKUMO電器で延長保証もつけてもらいました。最近HDDは消耗品だということを実感することが多いから保証はしっかり。

メインマシンのHDDを交換した

大事なデータをDVD-RAMにバックアップして、HDDを交換してOSを再インストールした。システムに20GBで残りをデータ領域として割り当て。けど100GB超の領域をフォーマットするのに2時間かかってちょっと後悔。次回からはさらに半分くらいに切ろう。

OSインストール後に前のHDDをセカンダリとして繋いで残ってるデータを移行するところで時間切れになった。

.comMaster★★2004を受験してきました

受験前に思っていたイメージより実用的な知識を問う試験でした。

レベルも高すぎず低すぎず、ネットワークやサーバー、Webサイト(HTML)等の技術を広く浅く必要とするので良い腕試しになりました。

ってまだ受かったかどうかわからないのだけど。

残念ながら問題が回収されてしまうため自己採点もできないので、7月26日の合格発表まで待ち。

まだ僕の周りでは認知されていないのが残念。ちなみに最上位の★★★(トリプルスター)になると個人・一般企業レベルのネットワークではなく、プロバイダに勤めてるような人が求められる知識を問う試験なので今のところ受ける気なし。って前にも書いたな。

最終更新時刻: 2008年07月31日

[tDiary] Blogkitで複数記事 / [C/C++] constの参照渡し

Blogkitで複数記事

こうさくさんのツッコミより

BlogKitで一日複数記事について私も同様に考えております。カレンダー的に月単位でまとめられる点も同時に使いたいです。更新時に時間まで付加して記号化出来たら解決かと思いますが、どなたか試されていませんか。

なるほど、その手があったか。プラグインで記事IDをごにょれるんだろうか。

とはいえ、一日に複数記事どころか一度しかBlogKitを使ってない僕がどうこうできるわけもなく(汗)

情報お待ちしております。

constの参照渡し

あるクラスのメンバ関数で以下のような関数を作った

void SetFilename(CString filename) {
  // メンバ関数m_filenameにfilenameをコピー
  m_filename = filename;
}

けどこれはCStringを値渡しでコピーしてさらにメンバ関数にコピーしているので効率が良くない。

ではfilenameをポインタで渡すか、とも思ったが折角C++だし参照渡しを使ったほうがスマートだろう。ということで以下のように変更。

void SetFilename(CString& filename) {

しかし、SetFilenameの中でfilename変更するわけでもないのに参照で渡すのもなー、と思って調べてみたらconstを使うことで解決できた。つまり、

void SetFilename(const CString& filename) {

引数にconstをつけることで引数の値を明示的に変更できないようにする。もし関数内でfilenameを変更しようとするとコンパイルでエラーになる。

これってCでも使えるんじゃ?と思って調べてみたらやっぱりあった

void SetFilename(const char* filename) {

これでポインタが指すデータは変更できなくなる。注意しなければいけないのはポインタそのものは変更できるということ。

本を読んで構文覚えただけだとこういう知識が抜けてるなぁ・・・

最終更新時刻: 2008年10月16日

[server] HDD入れ替え / [server] Debian GNU/Linux 3.0r2 installed / [C/C++][programming] データコンテナ

HDD入れ替え

メインマシンのデータを古いHDDから新しいHDDに移行完了。

で、古いHDDをディスクレスLinuxのテスト機になっているIBM PC300GLに乗せて、メールサーバにしようか検討中。

なにせ現状のメールサーバが古いノートPCなのでいつ壊れるか不安だし、何よりうるさい。その点、このPC300GLはCPUがファンレスで古いのに電源も静かだから、HDDさえ流体軸受けのHDDに換えれば静音マシンとして最適なのだ。

Debian GNU/Linux 3.0r2 installed

まずはBIGDRIVEでないとはいえ80GBのHDDをこのマシン(IBM PC300GL)が認識するのかどうか不安だったが、fdiskで見る限り無事全領域認識してるっぽい。IDEケーブルも一応UATA133対応のものを買ってきたんだけどもともとついているやつで認識した。折角だから後で換えよう。

いろいろデフォルトでインストールしてみたらなぜか文字化け、どうやら言語がGermanになってるらしい。適当に選んでたから間違えたみたい。

週末にケーブル換えて入れなおす予定。

今回のパーティショニング。

  • /boot 64MB
  • swap 512MB
  • / 5GB
  • /var 残り全部

データコンテナ

メインの開発言語がスクリプト言語(Perl、PHP)からC++に移って不便を感じるのは正規表現がないこともそうなんだけど、ハッシュ(連想配列)や動的配列が言語としてはサポートされていないということ。

正規表現はともかく連想配列や動的配列はMFCやSTLなどの今すぐ利用可能なクラスライブラリで用意されている。

STLのほうが汎用的な感じがするんだけど、せっかくVC++を使っているのでまずはMFCで用意されてるデータコンテナを試してみる。

クラス階層図を見てみるとMFCで用意されているデータコンテナは以下の三種類みたい。

  • CArray
  • CMap
  • CList
最終更新時刻: 2008年09月01日

九州へ / うまそうな明太子 / 竜の巣

九州へ

今年何度目かの九州にいってきました。

うまそうな明太子

以前「好物だ」「じゃ、今度いったときにでもお土産に」という会話をしたような気がする人に渡しました。

どうせならうまそうなものを、と思って発見したのが「とんねるずのみなさんのおかげでした」<新・食わず嫌い王決定戦>のコーナーで、ダイエーホークスの井口選手がお土産で紹介したという「かねいちまる」の明太子。

お土産は選ぶのが楽しい。今回はじっくり選んでる時間がなかったのがちょっと残念。

竜の巣

帰りの飛行機で積乱雲の近くを通った。窓から閃光を見て「あの先にラピュタがあるんだ!」などとアホなことを考えながら本を読む。

最終更新時刻: 2008年09月01日

[buy][book] 日経Linux 2004年8月号、UNIX USER 2004年8月号 / [buy][book] Effective C++ 改訂2版 / [buy][book] マスタリングTCP/IP 入門編 第3版 / OpenGroupware.org / [wish] KVM検討中

日経Linux 2004年8月号、UNIX USER 2004年8月号

日経LinuxはWebDAV/Sambaの特集とKNOPPIXカスタマイズの特集に、UNIX USERはEstraierとchalowの記事に惹かれて購入。

EstraierといえばRubyのまつもとさんが作ってるメールオーガナイザーのバックエンドで採用されたという記事で名前を覚えた。関連文書検索が面白そう。

Effective C++ 改訂2版

先週購入。良書。

マスタリングTCP/IP 入門編 第3版

先週ドットコムマスター受験のために購入。あまり読んでないけど手元には置いておきたい本。

OpenGroupware.org

OpenOffice.orgの姉妹プロジェクトでオープンソースのグループウェアを開発するのが目的らしい。

KVM検討中

常時稼動しているサーバが3台。テストサーバが3台。2台はCRTを共有。キーボード・マウスはそれぞれ別々。3台はノートだけど1台は画面が写らない。

いい加減ケーブルを付け替えるのがうっとおしくなってきたのと、キーボードが多すぎる。KVMスイッチの購入を本格的に検討中。

とはいってもまだ製品も探してない。コレガ、ラトックの製品は店で見かけるがどうなんだろう。

つなげる台数はできれば6台以上、少なくとも4台。

最終更新時刻: 2006年04月02日

.comMaster★★2004合格 / [buy] KVMスイッチ Princeton PKV-04 / [buy] Code Reading―オープンソースから学ぶプログラミングテクニック

.comMaster★★2004合格

本日合否発表でした。結果は無事合格。

多分大丈夫だろうとは思ってたけど、この手の試験は久しぶりだったので合格できて安心した。この勢いに乗って(?)Oracle Masterも受けてしまおうかな。まだ過去問とか見てないけど、範囲を見ると多分シルバーは取れると思う。ゴールドは勉強すればなんとか取れそう。プラチナはしばらくは無理。

それからやっぱり.com Masterのトリプルスターは今のところ無理かな。業務違うし。

KVMスイッチ Princeton PKV-04

中身はATENのOEMじゃないかと思って購入。

本当はSNEのKVM-CHANGER4Cが良かったけど店頭で見つけることができず。会社で使っていて切り替えのホットキーとか安定感とか気に入ってたんだけど、いかんせんものがないのでは仕方が無い。

とはいえこの機種も小さくていい。まだつなげてないから使用感はわからないけどスクロールロック2回+数字のホットキーも慣れれば便利そう。HHKはスクロールロックキーは無いが(FNキーと組み合わせ)、つなぐのはIBM製の普通のキーボードなので問題なし。

Code Reading―オープンソースから学ぶプログラミングテクニック

立ち読みしてたらそのまま閉店まで居座りそうだったので結局購入してしまった。

いやな日記のコメントがこの本の特徴を端的に表してたので引用させてもらう。

タイトルから「コードをとにかく読みまくるぞ!」という内容を勝手に想像していたが、実際には、ソフトウェア開発のノウハウ全般を手堅くまとめた内容だった。普通の教科書に載っているような基礎 (データ構造、オブジェクト指向など) から、他の本にはあまり載っていない実践的なノウハウ (ソースツリーの構成、ビルドプロセス、開発ツールの応用など) まで、コードの実例を示しつつ幅広いテーマを取り上げている。

つい最近もデータ構造で詰まったのでそれぞれのデータ構造の特徴と実装について書かれている章で勉強しなくては。

最終更新時刻: 2008年07月26日

一日に三回チェーンが外れた / 転職して二ヶ月 / レコードのジャケット作り / 1週間が十日ならいいのに / 長年日記をONにした / [work] 仕様書を書き始めた / [wish] 本立て / 眠気覚まし

一日に三回チェーンが外れた

先週あたりから自転車の調子が悪く、今週は毎日チェーンが外れるようになった。今日は三回も外れて、念のため持っていった軍手が大活躍だ。もう限界だなこの自転車。

しかも、何の前触れも無く外れるから結構怖い。立ちこぎをしていて外れると腕をひねりそうになる。というかちょっと捻った。危ないから週末に自転車を買ってこよう。朝の足の冗長性確保にもなるしね。

転職して二ヶ月

6月頭から今の職場だからもうすぐ2ヶ月。信じられないくらいあっという間だ。

前はサーバー弄ったりWebサイト管理したりPHPプログラミングしたり、写真撮ったりデザインチックなことをしたり。今はもともとやりたかったプログラミング一本。

プログラマーとして今の自分に特に勉強が必要だと感じたのは以下の二つ。

  • 管理能力
  • アルゴリズム

管理能力というのは人の管理じゃなくて、自分の管理。工程管理とか広い意味で体調管理も。実行できる計画を立てて実践すること。プログラマーでなくとも大切なことなんだけどね。

アルゴリズムは「業務で使えるライブラリを作れるレベル」に達していない。仮にこれから既存のライブラリを使うとしても、そのくらいはできないと応用とかできないし、どっかで痛い目を見ることになる。

ということでいろいろ勉強したいけど予想通り時間が無い。自分マネージメントして時間を作って効率を上げて早く帰れるようにすることが当面の目標。

時間無い→勉強できない→効率あがらない→時間無い→以下略の悪循環は避けたい。

レコードのジャケット作り

友人からの依頼で作成中。

レイアウトは指定されてるから写真と文字を並べて色をのせるところまでやってイメージを見てもらう予定。こういうとき自分にデザインセンスがないのがもどかしい。

これとは別にデザイン系の仕事依頼がきたんだけど断ってしまった。自分の時間の範囲内できることはやるけど、依頼はそれを超えそうだったので。でも「時間があればやりたい」という意思は伝えておいた。実際やりたいんだけんだけど今の状態で仕事うけても相手に失礼。良い仕事できる状態のときには請けます。

1週間が十日ならいいのに

一日が24時間以上あっても自分にとってはあまり意味がない。ピーク過ぎると効率落ちるから。24時間でいい。

でも1週間が十日あればもっと・・・なんて考えてるのは疲れてるからだな。寝よう。

長年日記をONにした

長年日記は過去1年以上前の同じ日の日記を表示してくれる機能。

このメモもいつのまにか1年以上続いていたので晴れてこの機能を役立てることができた。

去年の今日は何を書いていたのか・・・

他のもの作ってるときに副産物としてできた。すぐに公開できそう。Access で青写真を作ってから PHP でコーディングしたので楽だった。

自由奔放にプログラミングしてた模様。

仕様書を書き始めた

自分で作った今週のガントチャートを見ると、昨日から今日いっぱいまでが仕様書の時間だった。

「だった」んだけど、無理だった。おそらく多くのプログラマがそうであるように、僕も仕様書書くよりコーディングしてるほうが楽しい。

ただ、自分の作ろうとしているものを客観的に考えることは大切なことだ。仕様書を書く作業はそのためのよい機会だと思う。

ひとつ失敗したのは、作業能率が最も高いと思われる午前中にデバッグやってたことだ。ただでさえモチベーションが低下してる時間帯に仕様書かいてるとモチベーション維持がさらに難しくなる。

本立て

会社の机に本立てが欲しい。今は省スペースのPCに立てかけてるけど、重量級の本が多いからそのうちPCごと倒れそう。

眠気覚まし

  • ブラックコーヒー
  • 辛いお菓子
  • ガム
最終更新時刻: 2008年11月06日

ユーザビリティーの低いページをユーザが直す / Base64をエンコード/デコード

ユーザビリティーの低いページをユーザが直す

大手サイトの不備を模造サイトで指摘するユーザーたち

via http://www.do-gugan.com/blog/archives/000125.html

ユーザにとっても顧客にとってもうれしくない、作る側の勉強不足あるいはマスタベーションによって悲惨な作りになってる企業/商用サイトはいまだに存在する。(個人サイトは別)

自分が利用するサイトがそうだった場合非常に残念だ。

その手のサイトを作った会社が模造サイトを許容できる柔軟さをもっているなら、そもそもそこまでひどいサイトになってはいないのではないだろうか。

Base64をエンコード/デコード

するクラスを作った。というかCでかかれたコードをそのまま持ってきてクラスメソッドに押し込んだだけ。

最終更新時刻: 2008年11月12日

[buy] スーツ2着

さすがに今持ってる2着だけではまわらないので新たに2着注文した。

今は基本的にお客さんのところへ行ったりはしないからカジュアルでも(規定上は)許される。でもまぁ、楽なのでスーツで出勤している。

そういえば、どこかの記事で「IT系のイベントでは大学生みたいな格好の技術者こそ要注意。スーツでネクタイしてるのは営業マンだ。」みたいなことが書いてあったんだけど、どこのお気に入りにいれたんだったか思い出せない。後で探しておこう。

今日は休日出勤なので私服なんだけど、心なしかコーディングがはかどってる。

最終更新時刻: 2008年10月31日