2008年07月31日
色々対応してて思うこと
誠実な対応をしてくれるお客様は、本当に神様だと思う。そういうお客様のためだったら、できる限りのことはしようという気持ちになる。
でも、一定数そうでないお客様もいらっしゃる。
そういうところに大しても同じ対応をしていたのでは、仲良くしてくださっているお客様に対しても申し訳が立たない。
なぜかというと、そういうお客様への対応にかかったコストはどこかで回収しないといけなくなり、もし回収できなかったら会社が傾いてしまうから。
どちらにしろ、お世話になっているお客様、大切にしたいお客様に迷惑がかかってしまう。
それは絶対に避けたい。
だから、ややっこしいことを仰るお客様に対しては依頼をお断りすることも含めてそれなりの対応をせざるを得ないのだけれど、悪気があってやっているのではなくて、情報技術に詳しくないからそうなってしまっているケースもあるから難しい。
そういう場合、問題点を説明する責任はどうしても詳しい側にあると思うんだよなあ。
ううむ。。。
2008年07月31日
週末が詰まると曜日感覚狂いません?
先週末出張で東京だったせいか、今週は曜日の感覚がおかしくなってしまっています。
仕事の約束なら**日って決めるので問題は無いんですが、毎週木曜日の予定をすっかり今日が水曜日だと思っていて忘れてしまいました。
ここしばらくすごく忙しくなってきているのですが、スケジュール管理の方法がそれについていっていないのかも。反省して改善します。。。
2008年07月31日
相見積(2)
昨日書いた内容についてちょっと補足しておきます。
相見積を行うことの問題点は、
・そもそもそれが比較可能なものなのか、発注者側に判断の能力が無い場合があること。
・見積りのコストは最終的には発注者が持つことになること。
です。何も、見積りを取るなんてけしからん、という話じゃないんです。
見積りの最大の目的はコスト感の把握ということになると思いますが、それは取引がある関係ならある程度わかるものです。それなのに細かな案件でも毎回数社から見積りを取るという行為は結局発注者側にとっても大きな負担になるんです。
また、とにかく値切ることありきの見積なら、受注者側も失注となるリスクを加味した値段しか出せないわけですから、結局安くはつきません。それでも安い値段で引き受ける会社というのはそれなりの理由があるところでしょうから、信頼していいかどうかは怪しいと思います。
そういったことを理解したうえで、要望に対する解決策のセカンドオピニオン、サードオピニオンとして何社かから意見を聞くというのは、健全な競争、業界の水準向上につながるので悪いことではないと思っています。
2008年07月30日
相見積
システムの開発を発注するときに相見積を取る方は、美容院に行くのに見積を取るんだろうか。
安いところにいってヘンな頭を1ヶ月するくらいなら、高くても腕の良いところいくんじゃないかなあ。相見積とって腕のいい人に機嫌損ねられたら、そこから先どうするの?
そりゃ、価格は大事だし安くていいところ見つかればそれに越したことは無いんだけれど、根本的に比較不可能なものを比較したって仕方が無い。
ただシステムの場合難しいのは、仕様書どおりに動くプログラムでもその品質はピンキリなんだということが、技術に詳しくない方にはなかなかわかっていただけないということなんだよなあ。
2008年07月29日
デザイナーのためのプログラミング入門(番外編1)
前回から数値を計算するのをプログラムの例に挙げてきたので、ここでちょっと「プログラムらしさ」を味わってもらうためにちょっと込み入ったことを説明します。デザインには関係ないので、興味ない人は無視してください。
function execute(){
a=Math.pow(2,64);
alert(a);
}
前回までと同様、関数execute(){}の中を上記のように書き換えて実行してみてください。Math.powというのはJavaScriptで最初から用意されている関数(便利な処理をひとまとめにしたもの)で、Math.pow(x,y)と書くとxのy乗を返します。つまりここでは2の64乗ですね。前回まででやった書き方だと
function execute(){
var a=1;
for(i=1;i<65;i++){
a = a * 2;
}
alert(a);
}
とかくのと基本的に一緒です。
さて、実行するといくつになりますか?
もしよければ答をコメントしてください。
2008年07月29日
疲れがとれない。。。
2008年07月28日
WebSig会議を終えて
一昨日はWebSig会議でした。
お声掛けいただいた蒲生様はじめモデレータの皆様、誠にありがとうございました。
20分の時間の中で十分にSOYCMSのことをお伝えできたか自信がありませんが、 懇親会等でも一度使ってくださるとのお話をいくつか頂戴し、光栄に思っております。
junnamaさんに後でご指摘いただいたのですが、ビジネスモデルとビジョンの説明が不十分だったと思いますので、ここで簡単ですが補足させていただきます(さすが、痛いところを突かれてあせりました笑)。
まずビジネスモデルですが、現在はカスタマイズとサポートをお引き受けしております。将来的には、制作会社様や広告代理店様へのOEM供給、また、(技術力はあるが手が足りない場合も含めて)開発力が不足しているが 企画力のある会社様への(CMSに限らない)各種サービスへの技術エンジン供給を事業化していく予定です。
制作会社様にとっては、サイト制作・管理の省力化によるコスト削減の他、他社との差別化を図るきっかけにもしていただけると考えています。 パートナー企業様も募集しておりますので、ご興味をお持ちいただけますならぜひお問合せ下さい。
ビジョンについては、「わかりやすいシステムの提案」と「設計・開発手法の提案」を挙げさせていただきましたが、よりシンプルなものとして「世界中の静的HTMLサイトをCMS化する」ということを考えています。SOY CMSだと導入のハードルが非常に低いので、それが可能になると思っています。
しかし昨夜遅く帰京して今朝は7時から仕事してるからしんどい。。。
2008年07月24日
デザイナーのためのプログラミング入門(4)
amachangとかぶったwww
まあスタンスが違うので良しとしましょう。
僕はややこしいこと考えるよりもとにかく色々書いて遊ぶことができれば最初はそれでいいと思います。
用語覚えたりは楽しくなってからでいいやん。
***.htmlというファイルを作って、テキストエディタで開いて、保存して、ブラウザで開く。その後はテキストエディタで書き換え⇒ブラウザでリロード(ボタンでもF5でもOK)。という流れはwebデザイナーの方なら問題ないですよね。
前に書いたexecute(){}のかもめ括弧(この呼び方、あまり賛同を受けないのですがどうでしょう?高校時代の恩師が言っていたのを気に入って今でも使っています)の中をどんどん書き換えていってください。
execute(){
a=1+2+3+4+5+6+7+8+9+10;
alert(a);
}
としてみてください。
ちゃんと1から10までの合計が出ますよね?
これをもうちょっとプログラムっぽく書くとこうなります。
execute(){
var a=0;
for(i=1;i<11;i++){
a = a + i;
}
alert(a);
}
これは、まずaという変数(情報を入れる箱)を用意して、0という値を入れます。
for(i=1;i<11;i++){}というのは、まず最初iに1を入れて、その次の条件"i<11"を満たすまで{}内の処理を行うたびに"i++"という処理を行うということを繰り返す、ということです。i++はiに1を足すということで、ひとまずは"i=i+1"と同じだと思ってください。そして、{}のなかで変数iは、()内で書いた内容の値をとります。つまり、最初は1で、{}の処理が一回終った後(つまり2周目)はi++が実行されて2になります。三周目は3で、10周終ればその次はi<11の条件に弾かれますから処理が終了します。
なのでここでは
(((((((((a + 1周目のi) + 2周目のi) + 3周目のi) + ・・・ )+10周目のi
つまり、
(((((((((0+1)+2)+3)+ ・・・ )+10
が行われることになります。
2008年07月17日
史的イエス
最近、史的イエスの本をちょくちょく読んでます。
大阪~京都の往復が多く、その間は歴史の本の読書の時間に当てているのですが(昔は仕事してたけどあんまり集中できないので)、この春ごろから古代史が自分の中の流行です。
で、史的イエスについてですが、イエスが生きた時代がどんなのだったのか、イエスがどんな人生を送ったのかは全然知りませんでした。昔から聖書はキリスト教徒でもないくせに割と読んでいたので、キリスト教とイエス本人には大きな隔たりがあるということは大きな驚きでした。
まだ荒井献「イエスとその時代」と田川建三「イエスという男」というベタな二冊しか読んでいないので、もうちょっと色々な著者の本を読んでみたいところです。
ところで何でオタクって聖書(それも外典が特に)好きなんでしょうね。高校のとき、なぜか皆(もちろん非クリスチャン)エノク書とか読んでいたのを思い出します。
2008年07月17日
デザイナーのためのプログラミング入門(3)
さて、三回目です。
前回、関数を実行、といきなり書きはじめましたが、関数とは何か、というお話をしていませんでしたね。
色々説明の仕方はあると思うのですが、一連の処理をまとめたもの、というくらいに考えてください。
function execute(){
処理1;
処理2;
処理3;
}
なら、関数execute()を実行すると上から順に処理1、処理2、処理3が実行されます。このとき、処理1や処理2に処理を終了する、という内容が含まれているときは、そこから先は実行されません。
詳しい説明は後々行いますので、今はこの程度にしておきます。
さて、第一回で書いたHTMLの中の、関数execute()の内容(「{}」に囲まれた部分)を書き換えていきましょう。ボタンを押せば必ずexecute()が実行されるので、ここに処理をどんどん書いていくだけでOKです。
function execute(){
a = 1 ;
b = 1 ;
if(a==b){
alert("いっしょ");
}else{
alert("ちがうよ");
}
}
これを実行してみてください、”いっしょ”と表示されると思います。それが確認できたら、a=1、b=2と書き換えてみてください。どうでしょう?
これが条件分岐の書き方です。
#ちょっと内容簡単すぎます?



