2012年4月22日日曜日

簡単に人月請求の矛盾を指摘する

人月をベースにして請求金額を決定するには、
致命的な問題点があります。

例えば、
何か荷物をを送るときを考えてみてください。

速達で送る場合、
通常よりも料金が高いことには納得していただけると思います。

さてさて、人月ではどうなるでしょうか?

仮にできるプログラマーが、
普通のプログラマーの半分で仕上げた場合を考えます。

単価が同じであれば、
単純に半分の料金になります。

仮に単価に違いがあったとしても、
2倍以上の開きがあることはそうそうないでしょう。

あれ?
早く仕上がるのに安くなる?

できるプログラマーほど損をしている?

よくプログラマーの技術が育たないと嘆いているマネージャーさん?

技術が上がるほど損をするんだから、
育つわけないじゃないですか。

2012年4月17日火曜日

コーダーとプログラマーの違いを一言で

自分はプログラマーという名前に誇りを持っているタイプですが、
それ故にコーダーとの境界線が気になります。
※SEは元々アウトオブ何とか

色んなブログの主張はそれぞれ納得のいくものですが、
「これだ!」って感じがイマイチなのです。

何か一言で上手く表現できないかと、
寝不足の頭が考えました。

そして閃いたのが、
「技術的負債を返済できるのがプログラマー、
できないのがコーダー」
という定義です。

つまり負債を返せなかったり、
そもそも負債を制限なく量産するような人はプログラマーではないわけです。
それはコーダーとしてしまうわけです。

ただ気をつけて欲しいのは、
返済する能力があるだけで負債をしないとは限らないところです。

時期的な問題などで、
意図的に負債を作ることはよくあります。
ベンチャー企業によくあるやつです。

…こう言うと投資を受けているお金を貸している気持ちですね。
つまり返せない人に投資貸したらひどいことになるわけです。
(ただし、引継ぎという自己破産で逃げられることが多いです…連帯保証人になった覚えはぬぇ!)


そしてこの定義を適用すると、
なかなか面白いことが言えます。

何かというと、
コーダーを雇うと確実に負債を生むということが言えます。

もしもその企業にプログラマーがいなければ、
返済できずに倒産確定となります。

負債が多すぎる場合は、
プログラマーは逃げるか壊れるか…

おお!現実と一致している気がする!


しかしこの定義には、
プログラマーの創造的な部分に触れていないという欠点があります。

ここは返済能力があることそのものが、
(ある程度ながら)創造力の証明となるということで許してほしいです。

最低ライン的な意味でね。



さて、あなたの会社にプログラマーはいますか?

2012年4月16日月曜日

ガスコンロの修理

ここを参考にして、
火がつかなくなったガスコンロの修理を行いました。

その結果なんとか火がつくようになりました。
ついでにコンロ周りが綺麗になりました。

さらにその結果、
自炊率が急激にアップしました。

さらにさらにその結果、
自炊だけで疲れきってしまう今日この頃です。

過去に自炊率を9割以上にすると、
仕事にまで支障が出たという…

一人暮らしなんですし、
こだわりよりも手軽さを求めねば…

あれ?
何の話をしてましたっけ?

そうそう、ガスコンロでした。
要は修理できたのが嬉しくて使いまくっているのでしょう。

力尽きるその前に、
食器だけはあらお…(暗転)

2012年4月11日水曜日

ひさびさの自炊

というわけで、
つけ麺セットをまぜそばにして食べてみました。
もはやつけるのすら面倒だとか、
どれだけナマケモノなんでしょうか。
でもウマイからいいか。

詐欺の定義

カーネギーの人を動かすを読んでいて、
詐欺の定義に疑問を持ちました。

この本のテクニックを悪用すると、
一流の詐欺師の出来上がりだからです。

どこからが詐欺なんだろう?

個人的には、
「情報の不平等を利用した取引」
が詐欺の定義なんじゃないかと思っています。

しかしこれだと、ちょっとでも(故意に)脚色を加えた時点で詐欺となります。

厳しすぎ…いえ、これでいいのかもしれません。
それだけ世界は詐欺に溢れているってことです。

つまり、世界の多くは詐欺で回っているわけです。
その為、疑うことを知らない人が損をするようにできています。

疑いを持たない方が悪いのでしょうか?

「無知は罪」というのは、
どうしようもなく正しいのでしょうか…

世界が欺瞞に満ちているというのは、
こういうことなのかもしれません。

追記:こういうのを専門用語では「情報の非対称性」とか言うのかね?
追記2:「情報の非対称性」の*利用*は、どこまでなのかがこの記事は曖昧ですな~
追記3:記事そのものがダメダメなので雀の涙程度に続編を書きました。


JavaScriptはクロージャが使えてからがスタート

いや、単純にクロージャの基本を使うことになっただけですけど。

どう考えても、
JavaScriptはクロージャを使うことが前提になっているように思えます。

というか、
できないと詰むような処理が多い気がします。

個人的には関数型言語の基礎をWebサイト制作で学べるなんて、
何ともありがたい話です。

でも逆に考えると、
これって初心者バイバイになっているような…

でも利用者数を考えるとそうでもないような…

もしかして、
意味も分からないでサンプルコードをコピーしていたり?

いやいや~

2012年4月10日火曜日

やる気のジレンマ

家に帰ってからはナマケモノと変わらない状態の自分ですが、
たまには寝太郎のごとく動くときもあります。

しかしその翌日の仕事は、
明らかにエラー率が増大しています。

つまり、シワ寄せが起こっています。

常に動き続けられる人は、
超人としか思えません。

つまり、世間一般の人々は皆超人です。

普通以下の自分は、
普通になるか、
普通以下でもなんとかなるようにするしかありません。

2012年4月9日月曜日

EBSと天気予報

ジョエルが提唱したEBSの説明を聞いたとき、
自分は抵抗もなくすんなりと受け入れることができました。

その理由を考えると、
自分に気象の心得があったからだと思うようになりました。

実に分かりやすい共通点が2つあるのです。

ひとつは、過去のデータを使って未来を予測している点です。

気象の世界では当たり前の話なのに、
ソフトウェア開発では発想すら無かった状態です。

情報の解析なんてこっちが有利であるべきなんですが…
もうひとつは、結果を確率で表現している点です。

これも気象の世界では(以下略
これに限らず、もっと他の世界を見ればさらなる発見がありそうです。

全く違う世界は難しくとも、
近い世界には顔を覗かせておきたいものです。

参考資料:システムの納期とは確率分布だ



2012年4月4日水曜日

jQueryを軽く触ってみた

普段は基本を学ぶ為にライブラリなしから始めるんですが、
ちょっと急ぎだったためにjQueryでAjaxを組んでみました。

ほほ~、こりゃ楽だ。
やりたいことの上位陣が軒並みメソッドで用意されている。
※postJSONは無かったけど、重要な(ry

少なくとも、jQueryの範囲では全然つまずかない。
サーバー側は適当にJSON返させとけばいいですし。

これで単純なMVCだと表示に10秒(笑)かかっていたのが、
1秒以下のレスポンスに改善されました。
(遅い部分は後からAjaxで表示させています。)

確かにAjaxは素晴らしいです。
素晴らしいんですが…デフォルトで jQuery並に使いやすくして欲しいとも思いました。