2008年5月30日金曜日

Kubuntu 8.04 KDE 4 RemixとKDE4

インスール時に使用言語を日本語に設定しているにも関わらずKDEが日本語化されない。
language-pack-ja.deb language-pack-kde-ja.deb
(Ubuntu 8.04 日本語ローカライズド Desktop CD のリポジトリから取得) 
をインストールするとKDEの設定画面で日本語が設定可能になる。

Fedora9とKDE4

Fedora9Betaで発生していた現象は流石に解消。
インスール時に使用言語を日本語に設定しているにも関わらずKDEが日本語化されない問題は放置のまま。
kde-l10n-Japanese-4.0.3-4.fc9.noarch.rpmをインストールディスクからインストールすると
KDEの設定画面で日本語を選択可能になる。

2008年3月29日土曜日

Fedora9BetaとKDE

インストーラでデスクトップ環境としてKDEのみを選択して
インストールしてから、再起動後にログインしようとすると
ウインドウマネージャの起動が途中で中断されてログイン画面
に戻る。

Fedora9のログインマネージャにKDEのセッションに関する設定
がないため、このような現象が起こっているようだ。

いくらGNOMEびいきだからといって、これはないだろう、Redhat。
ベータ版といっても...。この問題が解決するまでFedora9は様子見。

基本的にGnome嫌いなのでGnomeを使う選択肢は自宅マシンではない。
 

2008年2月27日水曜日

達人に学ぶ SQL徹底指南書

この本の帯には「DBエンジニアに必要なSQLの
正しい書き方・考え方が身につく」とありますが、この本はDBエンジニア
のみならずプログラマにもお奨めです。

自分は外部結合くらいまでを理解してそれから先には踏み出してきません
でした、その必要も感じてきませんでいた。

ところが、この本で目から鱗が落ちました。

SQLの初級者を中級者に引き上げる教科書が今までありませんでした
、今はこの本があります、その教科書になりうる一冊です。

図を交えるなど文章が工夫されていて、集合論等のえてして小難しく
なりがちなテーマがかなり解りやすく説明されています。

SQLのライティングレベルを初級から中級に引き上げたい人は必読の
一冊です。

2008年2月17日日曜日

SI屋の語るミッション

「お客さまのため、お客様第一」は建前、本音は別。本音を建前でくるん
で誤魔化しているだけ。顧客の前では建前を本音のように語ることも必要、
それが駆け引きというかセールストーク。
SI屋が建前を前面に押し出すと苦労するのはそのSI屋の下についている
人間。本気で「お客さまのため、お客様第一」と思っているSI屋がもし
いれば、ついていくのは危険、そんなSI屋はまずいないが...。
「お客さまのため、お客様第一」を本音的に掲げるSI屋の下についた
人間はきっと土日出勤・徹夜当たり前の日々を(定期的に?)エンドレスに
送ることになる。数年(10年以内)でリプレースされるシステムにそこまで
自分の時間(人生)を捧げることに意味があるのか、甚だ疑問。そのSI屋へ
のそこまでのコミットに見合った対価を下についた人間が得られていれば、
それはそれでいいかもしれないが...そんなケースは稀。(断っておくが対価
は金銭だけを指しているわけではない、充足感・達成感・数年で陳腐化
するような技術知識は対価に当たらない。)

「お客さまのため、お客様第一」を本音的に掲げるSI屋はエンジニアの
不平不満を抑え込むためにエンジニアの前でも「お客さまのため、
お客様第一」を念仏のように唱え、エンジニアを納得させようとする。
対顧客向けのトークをエンジニアに対しても展開している時点でその
SI屋の底の浅さを感じる。

「お客さまのため、お客様第一」という言葉には水戸黄門の印籠のような
効果があるんだろうか?(いや、ない。)

SI屋は解らないが、エンジニアはクライアントのために働いているわけ
ではない。

[補足]
SI屋の手掛けるシステムはクライアント企業の業務と深く結びついている
ので、クライアントの業務手順に大きな変革があれば、システムは
リプレースされる。リプレースされない場合には原形を留めないほどの
大改造となる。SI屋の手掛けるシステムはクライアントの業務の小さな
変化には対応できるが変革と呼ばれるほどの大きな変化に対応できる
ほど柔軟には作られていない。クライアントの業務の小さな変化への
対応は無論、システムの小規模な改造。クライアント企業の業務変革の
スパンは数年(10年以内の)間隔でやってくる。

2008年2月9日土曜日

SIerでは何故ギーク志向エンジニアが評価されない(育たない)のか

SIerの身分制度と収益構造が密接に結びついているから。
SIerの身分制度は言わずもがなで、経営陣>コンサルタント>SE
>>プログラマ。
まず、収益構造からみてみる。
1つのプロジェクトに投入できる人数はコンサルタント<SE<<プログラマ。
つまり、プログラマの担当する製造の日数を契約時の工数で最大化すれば、
会社は儲かる。製造の人月を契約時の工数で最大化するためには単価の安い
平凡なプログラマを投入することで製造日数を多く見積もるのが一番、
その副次効果としてテストの日数も多く見積もれる。
この方法だと、プロジェクト単体から得られる利益がその規模に比例するよう
にできるので、SIerにとっては都合が良い。
優秀なプログラマを育てると、少ない人数で製造でき、バグも少ないので、
製造に掛かる日数とテストに掛かる日数が激減し、プロジェクト単体から
得られる利益が減少する。
プロジェクト単体から得られる利益がその規模に比例する状態を維持するには
プログラマを育てないで使い捨てにするのが一番なのである。
製造の日数を最大化する現状の方法ではプログラマを育てないことで
プログラマに払う報酬を安く抑えプロジェクト単体の人数の最も多い身分の
人件費を最小化するのがコスト削減に繋がっている。

SIerの身分制度については組織構造と収益構造が深く結びついている。
SIerでの人数分布は経営陣<<コンサルタント<SE<<プログラマ。
SIerの年間の売上が決まっている(プロジェクト単体では受注時に決まる)
中で、人数が少ない身分により多くの報酬を払うようにすれば、SIerは
儲かる。一番人数の少ない経営陣にとっては自分たちへの報酬が最大化し、
都合が良い。
SIerのピラミッド構造は今後も変わることはない。、
SIerの組織の中ではプログラマを評価しない仕組みが既に出来上がって
いるので、優秀なプログラマが行う行為が設計かどうかを議論する
ことに全く意味はない。

毎年毎年、大手・中堅のSIerには安い賃金で働かせることのできる
新入社員がわんさか入ってくるので、入社後数年の若手社員は
プログラマとして扱ってそれからSEにジョブチェンジさせている。
足りない分は外注・派遣で補い、単価を抑える。外注のほうも大手・中堅
のSIerに単価の安いエンジニアを薄利多売で投入して利益をあげる(外注の
場合は単価の高いエンジニア(SE)数名と単価の安いエンジニア(PG)の
セット売り、比率はSE<<PG)。外注・派遣業者のほとんどは自分たちの
利益を圧迫する人材育成にコストを掛けることはない。
専門学校や大学からの安くつかえるプログラマの供給は途絶えないので、
このSI業界の体制が変わることは当分ない。

そこにギーク志向エンジニアを育てる土壌はない。

[蛇足]
原価 + 利益 = 価格、クライアント向けと内向けでの原価が違うこともある。
クライアントの出せる金額は上限が決まっていることが多い。原価を低く
抑えることで利益の部分を大きくする。

2008年2月3日日曜日

何故SunはRubyを推すのか?

その理由の一端はRubyの型の扱いにあるように思う。
Rubyは全ての型をオブジェクトとして扱い、それらの型はRubyの
クラスライブラリとして外部に公開されている。
Rubyは変数への代入時にその型が決定され、変数は代入される度に
代入されるオブジェクトにより型が変化する。
Rubyは扱うオブジェクトの強い型付けが行われていながら、変数への代入時に
動的片付けを行う。Rubyは強い型付けと動的型付けの両方を採用している。

ちなみのPHP4は型が完全に実行環境の中に隠蔽されている、弱い
型付けの言語。

型の他にもJavaの将来の言語仕様にも取り込みやすい素地が揃っていて、
Javaにコミットしてきた企業にもその類似点から薦め易いLLだから
SunはRubyに熱心なのではないだろうか?