マニュアルが書かれた目的

[新装版]思いをカタチに変えよ!
[新装版]思いをカタチに変えよ!
おすすめ平均
stars《情熱》と《リスク管理》。
stars熱い1冊

Amazonで詳しく見る by G-Tools

最近、渡邉美樹さんの書かれた本を色々と読んでいるのだが、気付きが多いので、メモ代わりに投稿する。先日、業務改善でマニュアルを作ったりしているという投稿をしたが、そのマニュアルについて。

マニュアルを身につけるとき、最も必要なことは、
そのマニュアルを早く覚えることではなく、
そのマニュアルが書かれた目的を理解すること。
(思いをカタチに変えよ! p.81 PHP出版 渡邉美樹 著)

そうなのだ。これって、マニュアルの書き手も気をつける必要があって、何のためのマニュアルであるかを読者にすぐにわからせるように書いておく必要がある。最近自分が見たマニュアルは、マニュアルというよりも指示書レベルだった。

「やることはわかったんだけど、これって何のためにやるの?」

そう思わされるものが多い。やることやってればミスがないんだから大丈夫ということなのかもしれない。でも、マニュアルを書くのも人間だから、目的を書いておかないと、マニュアル自体にミスがあったときにどうしようもない。作業側のマインドは「これは間違ってると思うんだけど、でもこう書いてあるしなぁ〜、正しいのかもなぁ〜」という疑心暗鬼のまま作業して、だんだん「言われた通りにちゃんとやったんだからいいんじゃないの?」というふうに考えるようになってしまう。

マニュアルが書かれた目的を理解すると、「この仕事の意味は○○だから、頑張ろう」という気持ちになれる。これって「マニュアル通りにやってれば問題ないんでしょ?」とはもう心のレベルが圧倒的に違う。前者は、もっといいやり方を考えだすかもしれないが、後者はそんなこと考えもしないと思う。

自分がマニュアルを書くときは、マニュアルのはじめに、このマニュアルの目的を書くようにしている。かつ、このマニュアルに従うとこういう効果があって、あなたにはこういうプラス要素があるよって、書けるときには書いている。あと、この前書いたマニュアルに書いたかどうか、覚えてないけど、「このマニュアルは永遠に完成しないから、変な所や、わからないことがあったら著者に連絡ください」と一筆加えておく。そうするとマニュアル読者も食いつきがいいし、質問も飛んできやすい。最後のはJoel on Softwareの機能設計書のところから学んだことなんだけれど、これがあると、自分より優秀な人がいいアイデアや自分のミスを教えてくれるようになる。

人に物を頼むときは、必ず意味・目的を伝えるように気をつけていきたい。


業務改善に取り組む

うちの会社は業務プロセスが属人的になっているため、非常に無駄・ムラが多いと感じている。プロセスを改善しなければ結果は改善されない。上層部はプロセスの改善に取り組んでいるのかもしれないが、自分の目には全くそのようには写らないので、取り組んでいないのか、取り組んでいるつもりになっているだけかもしれない。

結果を改善するためには3通りあって、例えていうなら今乗っている自転車をもっと速く漕ぐか、自動車に乗り換えるか、その人が乗りたいものに乗せるかであると思う。業務をただこなしているだけだとストコーマ(盲点)ができてしまい、見えているにも関わらず見えていないという現象が生まれる。苫米地さんの本で出てくる、時計のデザイン書いてみろっていって書いた後に、何時だったか?っていわれたら思い出せないやつだ。しっかり見ているはずなのに、見えていない。これは業務でいえば、人から見れば無駄に思えることが、本人にとっては普通になってしまっていることだ。あと、部屋が汚れているにも関わらず、本人にとっては気にならないとかも、そうかな?って思う。

つまり、自動車があるにも関わらず、自転車しか見えなくなってしまい、そのため、一生懸命自転車漕ごうとしてるということだ。ちなみにこのサイトが自転車通勤のサイトだから、自転車を一生懸命漕ぐのはいいことやん!っていう突っ込みは放っておきます。これは例なので。あと、その人が乗りたいものに乗せるってのも、今回は語らない。そういえば自転車を速く漕ぐってのは、また苫米地さんの本でいうと、現状の肯定ということに繋がるなぁ。

無論、自転車を速く漕ぐこと自体を否定するつもりはないのだが、モチベーションが低下しているときにそれを求められても、「もう一生懸命やってるのに、あの人は私をちゃんと評価してくれていない」と思われても仕方ないんじゃないの?って思う。まあこれは結構前の自分がそう思っていたというのもある。今も評価基準が不透明すぎてこの不満点は解消されていないが、「問題は、自分自身はどうあるべきか?」ということにフォーカスして動くようになってから、気持ち的には好転してきたかなと思う。ライバルは昨日の自分であると。ただこの考えは他人には強要できないので(布教はできるけど)、鬱っぽくなっていってるんじゃないかという人を見ると、ものすごく心が痛む。気持ちがわかるから。

そうなっちゃってる人たちは負のスパイラルにはまっているためか、変化を嫌う傾向が強いので、変化に対する抵抗感を減らしていきながら業務改善プロセスに乗っけていく必要があるかなと考えている。そこで最近ツールのマニュアル作成に取り組んでいる。そうすることで、その人たちも喜ぶし、その人たちが喜んでくれるのを見て自分も嬉しい。他人のために奉仕することで自分が嬉しくなる「健全な自己中心主義」で動ける。まぁまだその人たちが喜んでいるかどうかはわからないけれど、昨日デザイナーさんのために作成したSubversion導入マニュアルは非常に喜んでくれたみたいで自分も嬉しかった。他の人も欲しいと言ってきたのであげた。また喜んでくれた。こういう正のスパイラルにすることで、チームごとポジティブに楽しく仕事できるようにすることを目標にしている。文句をいうだけでなく、それを改善するために行動することで、他人の信頼を勝ち得ていく。それを快く思わない人もいるのかもしれないが、じゃあ今度はその人が楽しく仕事できるようにするにはどうすればいいか?を考える。

今日は他人の土俵に対して業務改善に取り組んだ。これは自分にとっては実験である。ただ、本心から業務効率化をしてほしいから、行った。相手からすればおせっかいなのかもしれないし、下手すると屈辱的に感じるかもしれない(特にチームリーダーにとっては。まあ賛同を得た上でやったのだが、本心はわからない…)。正循環になっていくといいなぁという希望を抱いている。


xrea落ちすぎやろ~…

なんだかここのところ、xreaが落ちすぎてる気がする。
ブログを書こうと思ってアクセスしたら、DNSが設定されてないような画面が出てきた。そんなバカな…。俺は昨日から何にもいじっていないぜ!!どういうことだ!!

結果的には昨日から障害が発生していたみたいで、復旧中だったのか、復旧直後でDNS設定がクリアされていたのか…。どちらにしても信頼度が低くなってる。参ったな~…。色々な考えがあって、RedMineとかも使いたいと思ってるから、そろそろVPSサーバのレンタルとか考えたほうがいいのかもしれない。


久々にVMWareを起動した

俺は会社でチケット駆動開発っぽいことをしているから、家でもそうしたいと思ってるんだけど、オンライン上でRedMineをインストールできる環境がない。xrea+はレンタルサーバかつRails使うのは消極的っぽいので、使えないと思われるし。Subversionのバージョンも古いし。

とかいいつつ、一生懸命xrea+にRedMineインストールしようとしてたんだけど、挫折した。
Passenger使えるように、root権限のあるサーバがオンライン上にあればなぁ〜。できれば自宅サーバ以外で。電気代とか、騒音とか、セキュリティとか気にするのが面倒(root権限のあるサーバならたとえレンタルでもセキュリティ気にせんといかんって!)一番は騒音。電気代、騒音、バックアップなどを勘案するに、個人用途のサーバであればMac miniをサーバにするのはありだ(持ってないけど)。

そういえば、結構前にWindows側のVMWare Server上のCentOSにRedMine入れてたのを思い出した。すっかり忘れていた。つーことで、久々にVMWare起動。yum updateしたら、ものすごい数のアップデートが走った。放置しすぎてた。

subversionが入ってなかったので、インストールしておいた。一応、gitも。まだgit使った事ないけど…。まあこれで、一応家の中でならチケット駆動開発できるようになったけど。そのためにWindows起動してVMWare起動させんといかんのか。なんか手間かかるなぁ〜とも思うけど。Mac上のレポジトリのデータをVMWareに移動させるか…。

MAMPにCakePHPでRedMine実装しているCandyCaneを入れてみたけど、まだ移植中ということもあってか、すげー微妙だったので、導入は見送った。ただ、インストールのしやすさだけはすごい。早く完全移植されるといいなぁ。そしたらxrea+で動かす!!


MacでQpopperを使う(開発用)

前回はMacでPostfixを使う(開発用)でした。次はPOP3サーバであるQpopperです。

※開発用なので、localhostでしか動かしませんのであしからず。
設定も、全然修正しておりませんのであしからず。

■MacでPostfixとQpopperの導入の理由
開発環境としてMAMPを使っているのだが、Windows & XAMPPのときと違い、メール送信を伴うプログラムが作成できなかったため。
ならMacにPostfixとQpopper入れてしまうという作戦で行く事に決定!

■実行環境
Mac OS X 10.6.1 Snow Leopard

■参考サイト
Postfix
Mac OS Xをメールサーバーにしよう-Postfixの設定-for Leopard
Qpopper
Qpopper – やってみなけりゃ気が済まない

■では、Qpopperやってみる

  1. MacPortsを使ってQpopperをインストールする。
    $ sudo port install qpopper +pam
    
  2. PAM認証を使うために/private/etc/pam.d/sshdファイルをコピーしてpop3というファイルを作成する。
    $ sudo cp /private/etc/pam.d/sshd /private/etc/pam.d/pop3
    
  3. 起動の設定を行う。launchdに登録するplistファイルをProperty List Editorで書くとよいらしいのだけれど、実際はQpopper – やってみなけりゃ気が済まないで公開されていたファイルをほぼコピーした。自分はcom.eudora.qpopperの箇所を、com.macports.qpopperにした。
    保存名も、com.macports.qpopper.plistにした。

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Disabled</key>
        <false/>
        <key>KeepAlive</key>
        <true/>
        <key>Label</key>
        <string>com.macports.qpopper</string>
        <key>OnDemand</key>
        <true/>
        <key>ProgramArguments</key>
        <array>
            <string>/opt/local/sbin/popper</string>
        </array>
        <key>Sockets</key>
        <dict>
            <key>Listeners</key>
            <dict>
                <key>SockServiceName</key>
                <string>pop3</string>
            </dict>
            <key>SockType</key>
            <string>stream</string>
        </dict>
        <key>inetdCompatibility</key>
        <dict>
            <key>Wait</key>
            <false/>
        </dict>
    </dict>
    </plist>
    
  4. plistファイルをコピーしたあと、launchctlに登録する。
    $ sudo cp ~/com.macports.qpopper.plist /System/Library/LaunchDaemons/
    $ sudo launchctl load /System/Library/LaunchDaemons/com.macports.qpopper.plist
    

メールをPostfixで送信して、Thunderbirdにアカウントとしてユーザ名@localhostを登録したらメール受信できたので、これで大丈夫でしょう!MAMPで動かしているCakePHP製Webアプリ経由でメール送信しても届いたのでOKと。これでアプリ開発が続けられる〜!!よっしゃ!!