日本語 Windows 環境で Cwd::abs_path がうまく動かない件2015年09月26日 13時42分03秒

Excel 地獄に立ち向かうべく、複数の Excel ファイルから全検索をかけてどうにかするような処理を Perl の Win32::OLE を使って書こうかと思ったんだけど、 OLE での Workbooks.Open メソッドを Perl から呼ぶ場合、カレントディレクトリの解釈が異なるとかの理由でファイル名を絶対パスで渡さなきゃならない。

そこで、 Cwd なるパッケージの abs_path 関数を使ってファイル名の絶対パスを取得して渡すやり方を試してみたんだけど、特定のファイル名をこの関数に渡した時に例外が発生する現象に苛まれて結局その日のうちにツールを完成することができなかった。

手元の環境で再現状況のログを取ることができたので以下に掲載。

C:\Users\murachi\Documents>echo hoge > 確定申告.txt

C:\Users\murachi\Documents>perl -M"Cwd qw/abs_path/" -e "print abs_path('./確定申告.txt')"
./確定申: No such file or directory at -e line 1.

C:\Users\murachi\Documents>echo hoge > 表示画面.txt

C:\Users\murachi\Documents>perl -M"Cwd qw/abs_path/" -e "print abs_path('./表示画面.txt')"
C:/Users/murachi/Documents/示画面.txt
C:\Users\murachi\Documents>echo hoge > 画面表示.txt

C:\Users\murachi\Documents>perl -M"Cwd qw/abs_path/" -e "print abs_path('./画面表示.txt')"
./画面表: No such file or directory at -e line 1.

C:\Users\murachi\Documents>

どうやら内部でファイル名を Shift JIS で取り扱っているらしく、マルチバイト文字のオクテットに 0x5c (ASCII コードで言うところのバックスラッシュ \) を含む文字の取り扱いで文字を潰したりこけたりしてしまっている模様。

まだ試してはいないけど、もしかしたらディレクトリ自体にこういった文字が含まれるようなケースでもしくじるのかもしれない。

何はともあれ、絶対パスは何か別の方法で取ってこないとダメだなぁ…。

脱サラ、それから。2015年06月11日 13時40分21秒

サラリーマンだったおいらが某社を辞めたのは 2006年の 4月末。 4月いっぱいは有給を消化させてもらったので実質は 3月末で辞めたようなもんなんだけど、それから 1年はぶらぶらしていた。ニートってやつだ。何か明確な目的があって会社を辞めたわけでもなく、溜め込んでいた貯金を、精神と一緒に食いつぶしながら、自分が何をやるために時間を費やしたいのかを考えるために時間を浪費していた。

フリーランスとか起業とかってのは、当時はほとんど考えてなかった。 6年間もサラリーマンやっていながら、他所から仕事を取ってこれるようなコネというか、ツテというのはほとんど持っていなかった。本当はその当時にすぐにでも、かつての出向先の人とかに連絡でも取っていれば、そのツテで何かしらの仕事を回してもらえたのかもしれない。でも少なくともあの当時は、そういうふうに行動を起こす気にはなれなかった。

その後 1年間ほど派遣社員として某所で働いて、年度の変わり目近くになって、昔の同僚のツテで仕事を回して貰えそうな話が出てきた。更には今のかみさんの知り合いに、当時念願かなって司法書士の資格を取ったという人が、会社を起こすなら手続きを引き受けるとまで言ってくれた。こうしたありがたい縁が重なって、おいらはそれまでホームページのタイトルに使っていた「はらぺこ」という名前で、会社を起こした。

その後、最初にもらってくる予定だった仕事がポシャって、慌てて某首都圏のフリーランス向けに仕事の面倒を見る組織を訪ねて、そこに言われるがままに個人事業の開業やら青色申告承認やらの申請をやって、結局のところ経営者とフリーランスの二足のわらじを履くことになり、そこでもらってきた仕事をこなすも希望していた内容ではなく (仕様からテストを起こす仕事かと思ったらテストマシンをひたすらアドホックにいじり倒すだけの仕事だった)、半年そこいらで辞めてしまったらちょうどその時期にリーマン・ショックにぶち当たり、次の仕事も見つからないまま困り果ててしまうことに。

そんな折にまた昔の同僚 (一応さっきのとは別の方) のツテで仕事を回してもらえることになり、それでやっと会社の方の売上が立てられるようにはなったのだが…。

脱サラしてから 10年目、会社を起こしてから 8年目、更には結婚してから 4年目を迎えている今日この頃。脱サラ以降の仕事人生について、今ここで総括するならば、正直言って完全に失敗だったと思ってる。

何故。何が失敗なのか。

実は一番無駄だったように見えるあの最初の 1年、その終盤ぐらいになって、自分がやりたいと思える目的のようなものは大分掴めていて、当時はまだ技術的なネックはあったが、それを達成することはひとつの目標になると自分では考えていた。

それから 8年以上がたった今も、その目的に関して、ほとんど着手すらできていないような状況だ。この業界では、勤め人である限り、時間的にも体力的にも、業務以外のことに割くだけの余裕はなかなか得られない。いや、得られないものだとおいらは勝手に思い込んでいた。

実際のところ、サラリーマンだった頃も、派遣社員だった頃も、あるいはフリーランスとして出向していた頃も (上記で書いた半年以外にも、経済的事情により 1年間近くフリーランスとしていくつかの現場に出向していた時期があった)、仕事自体が夜遅くにまでなりがちだったり、通勤時間もまあまあ長かったりで、外で飯を済ませて家に帰ってシャワー浴びてぐぅ、となってしまうことは多かったように思う。

しかしその一方で、週一ぐらいでミーティングをし、持ち帰りで家で作業をこなす日々に、そこまで余裕があったのかというと、それも微妙だ。十分な報酬が得られていればまだいいが、様々な事情により報酬も十分に得られなくなると、かみさんを外に働きに出し、自分は家事に追われながら、必要な作業をなんとかこなす日々が続いた。とても自社開発にうつつを抜かす余裕はなかったように思う。

家族に我慢を強いたという意識も、自分で失敗だったと感じてしまう大きな一因になっている。出向で稼いでいるときには時間的に我慢を強い、稼ぎの少ない持ち帰り仕事の間は経済的に我慢を強いた。経済的なことについて言えば自分の親にも迷惑をかけたし、具体的なことは言えないが関係各所にも迷惑をかけ続けている。

前者についてはこのままでは埒が明かないという思いがあり、後者についてはもうこれ以上は迷惑をかけられないという思いもある。もうそろそろ潮時なんじゃないか。

起業を考えている人がもしこれを読んだならば、おいらのようになりたくないなら起業なんてやめてしまったほうが良い。勝てない喧嘩はするなというが、準備に準備を重ね、勝てる公算を立ててからでなければ、起業なんてするものではない。

つまりは気持ちの問題なのだ。精神論は笑えない。どんなに忙しい日々を送っていたとしても、成し遂げたい目的がもし出来てしまったのであれば、なんとかして時間を作って、少しずつでもそれをこなしていくべきだ。そしてその目的を一定のところにまで成就し、他者の評価の目に晒し、その結果、その成果に目を留め、その先にある進化に期待の声が寄せられるならば、その時にこそ、初めて起業を含めた新しい身の振り方について考え始めれば良い。それからでも全く遅くはない。

その一方で、見切り発車で居場所も経済的担保もかなぐり捨て、その先に待つ孤独や貧困に精神を蝕まれるくらいなら、ただ忙しいぐらいのほうがよっぽどマシだ。忙しすぎてボロボロになって精神を病むほどならさっさと転職を考えるべきだが、そこまででもないのであれば、そういう状況のうちにやれることはやってしまうべきだ。迷惑をかけない程度であれば多少のズルはしてもいい。

おいらは今のところ、まだその目的そのものについては諦めたつもりはないんだが、その一方で、そろそろ今の生活については、一度けじめをつけなきゃいけないだろうなとは思い始めている。それがどういう形になるのかは、今のところまだわからない。交渉次第では、現状維持もできるかもしれないが、正直それは期待していない。

歳を重ねてしまったからと言って、それが何かを諦めなければならない理由にはならないと思う。でもその一方で、歳を重ねれば重ねるほど、身体的には不利になる。焦っても仕方ないが、立ち止まっているわけにもいかないのだ。

ASP.NET でありがちな話2013年06月20日 06時11分38秒

よーするに今の職場からでは恐らくこんなブログサイトはフィルタリングされて見られやしないだろう事を良いことに書きたい放題愚痴をまき散らしてしまえというお話です^^

単なる表示上の変化に過ぎないものまでポストバックで実現する

ポストバックというのは ASP.NET 用語で、よーするにフォーム操作で発生する POST 送信とそれに対するサーバーからの応答によって、同一ページ上でのユーザーとシステムとの対話を実現してしまおうというやり方のことです。これは問い合わせ内容に応じて結果表示を切り替える仕組みとして想定されているものですが、どうやら一般的な ASP.NET 開発者は DB への問い合わせが発生しないようなことにも平気でポストバックを使ってしまうようです…。

例えばラジオボタンの選択に応じて入力項目の表示が切り替わるような UI とか、クライアントサイドスクリプトで事足りるのにも係わらず、なぜか AutoPostback="true" とかにして、 SelectedIndexChanged イベントハンドラをわざわざ書いて、わざわざ POST が発生するような作りにしてしまう。マスターページを使ってると ID が変化しちゃうから… という声もありそうですが、 runat="server" にさえしなければ ID も変化しないわけで、だったら <div> なり <span> なりで包んで表示/非表示ぐらいは出来るだろうに (それはそれで微妙にダサイんですが…)。

何でもかんでも Page.Session に突っ込む

DB に対する問い合わせ結果を表にして表示するような UI は業務系の Web アプリでは多いですが、一般的な ASP.NET 開発者の中には DB から取得した問い合わせ結果の DataTable (配列の豪華版みたいなもん) をそのまんま Page.Session に突っ込んで、ユーザーがレコードを選択したときの値の突き合わせのために再利用しようとする人が多いみたいです。

ASP.NET では、セッションに紐付いた情報はデフォルトではプロセスのメモリに格納されるとあります (だからラウンドロビン構成にしても同一セッションでのアクセスは常に同一の Web サーバーによって処理されるわけですね)。上記のような実装を想定してセッション状態ストアプロバイダーとやらを独自に実装していたり、 Web サーバのメモリ容量を十分に確保していたりしているなら良いのですが、ちゃんとそこまで想定していらっさる開発者さんってどれくらいいらっさるんでしょうね…。

何でもかんでも View State に突っ込む

ユーザーコントロールを実装する場合、コントロールの表示状態を保持するために、関連する情報を View State と呼ばれる場所に格納しておくものなんだそうです。いや、本当に表示状態に関する情報 *だけ* をここに突っ込むんであれば良いのでしょうが、データグリッドの DataSource に突っ込むようなでかいデータをそのまま View State に放り込む人とかも結構居て、そのおかげで出力される HTML がすさまじいことになったりするケースもちらほら見かけるようです… あれは BASE64 かなんかでエンコードした文字列をそのまんま hidden に書き出しますからね…。

他にもいろいろと言いたいことはあったような気もしますが、よーするにまとめてしまうと、何でもかんでもブラックボックス化して取っつきやすさばかりを重視した開発ツールなんて、もう初学者の学習教材専用ということにしてしまって、プロの現場に持ち込むのは止めましょうよという話だったりするわけです。ぐんにゃり。

ASP.NET2013年06月03日 08時11分27秒

かつては EC サイト構築に活用されていたとか何とか言われていた ASP.NET が、今では企業向け業務用 Web アプリケーションの分野でばかり使われているような気がする現状について考えてみる。

考えるまでもないだろ、とか言われそうな気もしますが…。

とりあえずインターネットに公開する一般向けサイトの開発に向かない、というかそっち方面ではほとんど見向きもされない理由は分かるんです。個人のサイトで使う分にはちょっと仰々しすぎるというか大げさというか、準備しなきゃならないものがあまりにも多すぎてコスト高だと思うし (そも個人がサイトを開くレベルのホスティングサービスで Windows Server が使えるところ自体あんまり聞かない)、企業が作る Web サービスとかだと、仮に人気が出ちゃってアクセス集中しだしたときにスケールアップの難しさ云々以前に ASP.NET の仕組み自体が高トラフィック要求しすぎというか無駄が多すぎで話にならない。

一方で企業がイントラで使う業務用 Web アプリの分野では通信コストのスリムアップはそれほど要求されないし、むしろ要求されたらサーバー増築でさらにお金をせびる口実にもなるし、技術的には決まり切った作法に則って行われる単純作業に集約できてリスクも軽減できそうだしで良いことづくしにも見える。何より自由なソフトウェアはサポートが無くて既存のバグに由来する不具合も全て自前で責任をとる必要がある。何か問題があったラベンダー任せに出来るという安心感が、その辺の業界での採用を下支えしている感もある。

ただ、当のベンダーである Microsoft はその状況をよしとしているのかね? MVC モデルの登場は、むしろそうした状況を打破したいようにも見える。 UA へのアウトプットを概ねコントロール可能にすると言うことは、通信コストの軽減を意味するものでもあり、あるいは他の Web フレームワークと同じ土俵にたつための変更であるとも言える。ホスト OS が IIS という時点で同じ土俵には立ててない感もあるけど。

ASP.NET を利用して開発を行う企業や開発者について言えばもっと心配だ。 MVC に関して言えば、デスクトップアプリで言うところの WPF ぐらいの勢いで敬遠されている節もある。まぁいつだって業務アプリ界隈は保守的な人々の巣窟な訳だけど、 ASP 以外の普通の Web 開発現場ではむしろ MVC モデルを採用したフレームワークの利用が一般的だし、そうでなくても HTML5 や、 JQ でもいいからクライアントサイドスクリプティングが普通にこなせるようでないと潜り込んでいくのは難しい。 ASP.NET で開発やってました= Web 開発経験ありますとは到底言えないのが現状なのではないかと思うがどうか。

VSS2013年05月24日 06時48分49秒

どうも、ご無沙汰でやんす。

つなぎの、というつもりでもなかったんですが、とりあえず 1ヶ月半ぐらいやらせていただける案件があって、食いつなぐためにもやらせていただいているんですが、その現場のネット環境が非常に厳しい (外部とのメールのやりとり NG、 Web 閲覧は Google Web検索、 Google Map、Yahoo のトップページ、 MSDN Library 以外は概ね NG、その他のプロトコルも当然 NG) 為、仕事自体もやりにくかったりでいろいろとフラストレーションを抱え込んだりもしているわけですが。

仕事の内容は ASP.NET で作られている業務用 Web システムの機能追加のお手伝いで、 ASP の部分、つまりは表示と UI 制御辺りの実装を主に… まぁ仕事の内容の話はいいや。古いバージョンに拘泥している割にはガッチガチに M$ 様の支配下にいらっさるようで、ソースコードのバージョン管理も VSS を使用、当然 Trac のようなタスク管理ツールや BTS はなし。線表も顧客向けのを Excel かなんかで書いてただけみたいで (Project ぐらい使えよ)、進捗管理とかスケジュール管理とかの概念自体が微妙に希薄な印象…。

で、 VSS なんですが、実はおいらはこいつを使うのは今回が初めて。いやーこれはこれはありがたい経験をさせていただいております限りでございまして…。おかげでこいつがネット上では情報収集および発信に熱心なプログラマーたちの間で何で嫌われているのかが理解できてきましたよ。使う前までは単にマージではなくロック方式だから嫌われているだけなんだと思っていたのですが…

まず戸惑うのは言葉の違い。これはまぁ方式の違いもあるので仕方ないことではあるのですが、チェックインという言葉は使ったことがなかったので… この辺は恐らくホテルのチェックイン・アウトと同義だと思えばいいのかなと。

ソースの取得 (Subversion 辺りでいうところの update) も微妙に戸惑いますね… 何で毎回「サブプロジェクトも取得」とか「ツリーを構築する」とかチェックボックスにチェック入れなきゃあかんのでしょう… んなもん指定した場所以下は全部落とせに決まってるじゃないですか… ていう。それでディレクトリが追加されていたりすると「ディレクトリ無いけどどうする? 作るの?」みたいな確認ダイアログをわざわざ出してきてブロックする… メール確認してたりで VSS ほったらかしにしてるとそのダイアログが裏に隠れちゃってたりして気がつかないまま作業開始しちゃって、あれ、直したって言われてたビジネスロジックの動きが変わってないなぁ、何か間違えてるのかなぁ… なんてことに無駄に時間を割いたり… orz あと自分でチェックインした以外の変更があれば「xxx を置換」ってログメッセージが出るから取得が終わったんだなって分かるけど、そうじゃないと何にもログ吐かんのな。キャンセルボタンが消えてるから一応気づきはするんだけど、時間かかるんだからせめてもうちょっと「終わったよ!」ってのアピールして欲しい ('A`)。

で、作業に入るわけですが、 Visual Studio は VSS と自動で連携していて、 Visual Studio 上で書き換えようとした瞬間に、そのソースファイルのチェックアウトをしに行ってくれるようになってる。まぁロック方式ですし、手動でやらされることを考えれば便利なんでしょうけど、間違えて触っちゃってアンドゥで直してそっ閉じしたファイルがチェックアウトしっぱなしになっていてチームにご迷惑を… みたいなのは方々で多発していらっさるんでしょうなぁとか思うとちょっと胸熱…。

ロック方式とマージ方式のどっちかが絶対に優れているとかは言うつもりはないです。普通の開発体制であれば同じファイルを複数人が同時に触るということはそうそうないですし、チェックインし忘れによる不便とコンクリフト発生時の面倒を秤にかけても仕方ないですし。個人的には、テキストファイルをテキストファイルとして編集するようなもの (ソースコードとか XML とか HTML とか) はマージ方式、それ以外 (バイナリファイル全般とか、 XML でも MS-Office のドキュメントみたいにアプリ上での状態まで保存するためにちょっといじっただけでファイル全体にわたって diff が出まくるようなものとか) はロック方式で管理するのがやりやすいかなとか思っていたりはするわけですが。 Subversion なんかはファイルの種類ごととかディレクトリごととかでマージ方式かロック方式かを指定できたりするのは良いですよね。

それから VSS では変更内容のログを残しておくという文化がないっぽいのも気になります。一応、 Visual Studio 上でチェックインを行う際にはログメッセージを記入することも出来るようにはなっているのですが、現場の人には「別に特に書かなくて良いですよ」とか言われてしまい、それでもなんか嫌なので何かしら変更内容を記入するようにはしていたんですが、変更履歴のログを見る機能とかそういえば使ったこと無いですね… (一応無いことはないらしい)。 この辺はちゃんとやろうと思えばやって出来ないことではないとは思うんですが。

ログと関連して、最近は Trac や Redmine などといったタスク管理ツールと連動させる使い方が結構広まってきていると思うんですが、 VSS にはそういうソリューションってあるんですかね? コミットログにはチケット番号を、チケットにはリビジョン番号を書いて相互リンクとかやると結構便利だったりするわけですが…。

そんなわけで、結論としては VSS 不便だなぁというお話でした。それでもこうすればもうちょっと便利に使えるよ、という話はあるのかも知れませんが、 VSS と Visual Studio で完結できない話であるなら、そも今の現場はネットからファイルをダウンロードすること自体フィルタリングで物理的に不可能なので、まぁ 1ヶ月半だし我慢しましょうという感じですかね。(*sigh*)

近況報告2013年03月18日 15時01分35秒

どうも、お久しぶりです。

こちらのブログではあんまり書くこともなくなっちゃったので、かれこれ 1年半近くほったらかしになってしまいました。最近は Twitter でクダ巻いているか、たまに技術ネタを会社のブログにしたためるぐらいです。はてブも惰性で使ってますが…。

ここしばらくの近況を書こうと思ったのですが、会社のブログの方では微妙に書きにくいような気もしたので、こっちでひっそりと記しておくことにします。

  • 2012年3月頃 - お金にならない仕事を継続しつつ自社製品開発の道を模索するが形にならず。即金を求めて専務が派遣労働に従事し始める。
  • 2012年7月頃 - お金にならない仕事の目処がようやく立ち、同じ取引先殿から新しい仕事の話を伺う。技術調査も兼ねて自作マシンを新調してもらう。
  • 2012年9月 - 体調を崩したこともあり、専務が派遣労働を終了。
  • 2012年10月 - お金がない。どうにも首が回らなくなり、某社を頼ってフリーランスとしての仕事を紹介してもらう。同月下旬より新宿区内某所にて常駐開始。それまでの取引先には事後報告 (その辺の融通は利く方々なのです…)。この時点では、とりあえず基本設計が 11月いっぱいまで、それ以降に詳細設計および開発が控えており、とりあえずは基本設計までの契約というお話だった。
  • 2012年11月 - とりあえず12月いっぱいまでは基本設計が続くような話になる。 / やっぱり生活が苦しいからと言うことで結局専務も派遣労働を再開。
  • 2012年12月 - 一次受け設計チーム内の認識すりあわせがようやく落ち着く。とてもじゃないが今年中は無理という話がようやく偉い人に理解され、リスケ発生。基本設計は 2月いっぱいまでとなった。
  • 2013年1月 - 基本設計がなかなか上がってこない中、とりあえず詳細以降の工数を算定。設計書が全然できあがってない上、要件定義資料は当てにならないので、11~12月に認識合わせのために作っていた画面イメージ資料 (ラフ) を元に超ざっくり算定。どんぶり勘定だが、それでも最低 20人は人集めないと終わらないよねみたいな話になり、関係各社結構飛び上がる。
  • 2013年2月 - 下流工程各社の調整が進む。顧客 (パッケージの販売元) 社内で用いる販売管理ツール (ポンコツ Web アプリ) の開発が先行して走り始める。基本設計は 2月いっぱいで大枠完成、 3月15日に精査完了、3月18日より詳細以降の行程を稼働開始と言うことでスケジュールが引かれる。
  • 2013年2月28日 - 担当分の設計は無事大枠で完了。
  • 2013年3月上旬 - 調査を要する部分、後回しにしていた部分などの取り込み。これも滞りなく完了。
  • 2013年3月12日 - 確定申告をしなきゃならんということで 1日お休みを頂く。その日の夕方頃に営業から電話あり。曰く、

「失注しましたぁ (テヘペロ☆」

「」

  • 2013年3月15日 - 契約満了にて業務終了。
  • 2013年3月18日 - かつての取引先と打ち合わせ、今後について話し合うなど。←イマココ!

えー。そんなわけで、相変わらずコの業界は無理がまかり通って道理がへし折られ続けているわけでございます。まぁ、働いた分はお金もらえるのでそんなに痛くはないんですが、収入源としてそれなりに当てにしていたのでとりあえず引っ越しが遠のいたのは痛いですね ('A`)。

お金になるお仕事募集中です…。

「ブラック会社」がブラックにならざるを得ない社会的背景2009年07月10日 01時30分39秒

どこかのうんこブログがリンク先記事への回答として「雇用流動性が低いからこうなる、解雇規制を撤廃すべきだ」などと極めてうんこな事をほざいていらっさいますが (腹立たしいのでいちいちリンクしません)、まぁそれはそれとして。

ブラック会社、あるいはブラック企業というのは、要するに労働環境が劣悪で、しかも社員の多くがそうした状況に疑念を抱かない、あるいは諦めてしまっている社畜ばかりである、といったような状況に陥っている会社のことを指し、そう言った現象について、経営者対労働者の構図で物を語る人が多かったりする概念です。

実際のところ、こうした現象というのは必ずしもそのような単純な物であるとは限りません。特に、SI 業界に関して言うなれば、顧客企業との軋轢、上流・下流やコンサルなどといった工程を切り分けるスタイルによる分業と、それに伴うピラミッド型の下請け構造、中小企業への支援制度が手薄な行政、などといったものが背景に横たわっており、その結果として、不利な条件で事業を請け負わなければならない零細ソフトハウスの苦渋、ご贔屓さんとの政治的おつきあい、さらには会社規模でいえば一流の筈なのに部署や取引先によって明暗がくっきり分かれるなんて事もざらにあったりする訳です。

もちろん、労基法がないがしろにされ、労働者の権利が踏みにじられている現実は、どうにかする必要があるでしょう。内部告発が増えてきているのは好ましいことですが (今のところニュースになっているのは飲食業界が多いですが)、罰則規定を強化し、労働者の権利侵害が悪であるということを政府の態度として明確にすべきだというご意見は、確かにごもっともであると思います。しかし、それとセットで同時に解決して欲しい問題がいくつかあるのも事実です。

ことソフトウェア業界に関していうならば、以下のような問題が横たわっている訳ですが…

  1. 作業領域が工程によって分断される為、下請け構造が根深く、企業間の上下関係がはっきりしてしまっている。
  2. 企業の技術力を推し量る基準が存在しない為、無名な中小零細企業は営業面において不利を強いられている。
    • 品質管理能力については一応 ISO 9001 というのが存在するが、そもそもテストを切り詰めろなどといった品質をないがしろにする要求をしてくる顧客が未だに多く、業種によってはあまり重視されないケースも少なくない。
  3. システム開発の適正価格が理解を得にくい為に、市場自体にダンピングの発生しやすい土壌ができあがってしまっている。
    • これに対し、システム構成を無駄にリッチにする、オープンではない技術を多用し、保守を入れ替え不可能にして独占する、などの (顧客側の無知を逆手に取った) 悪質な商習慣も横行している。
  4. 起業支援が手薄な為、新規に事業を興そうとするものが少なく、いても先立つものがない為に、SI 事業の下請けの末端として仕事を受けざるを得ないという状況がある。

1 と 2 は中小企業支援の問題。公正な取引が阻害される要因というのはいろいろと考えられる訳で、そのうちのいくつかは政府による規制によって状況をある程度改善することは可能かも知れません。一番の問題は作業範囲が工程によって切り分けられることであり、上流を請け負う企業が設計書を仕上げて持ってくるまで下流を請け負う企業がコーディングの作業を開始できないとか、納期までの時間の内の大半を上流が食い潰してくれやがったのに最終期限は延ばして貰えないであるとか、顧客が直接お金を払うのは上流を請け負う企業だけなので上流が見積もりを誤ればとばっちりを食うのは下流であるだとか、そういう差別要因を育む諸悪の根源なのだから、作業範囲を工程で切り分けること自体を不公正な取引であるとして規制してくれればそれが一番公正な世界を創り出す近道であるようにも思うのですが、実際のところ、うちには顧客と直接交渉してシステムを提案できるような人材はいない、仕事をくれる上流企業から仕事を貰えなくなるような規制ができたらうちは商売できなくなる、なんていって尻込みするソフトハウスも少なくないだろうから、いきなりそんなドラスティックな改革をやってのけるのも難しいんだろうなぁとも思ったりする。

技術力うんぬんに関しては、実際のところ、個々のスタッフの経歴がすべて、というのが実情。後は取得した資格とかですかね。で、「A と B と C という技術を使えば、n 千万円で実現可能です。当社であればこれらの技術を経験しているスタッフは揃っています」なんつって営業したりする訳ですが、こんなのはっきり言って顧客は理解できる訳がないので、結局は企業の知名度で選ぶか、価格が一番安いのを選ぶか、ということになってしまう。 3 の適正価格が理解されない問題とも通じていて、顧客企業自体にしっかりした情報システム部門があったり、有能な CIO がいらっさるようであればそれほど問題にはならないし、そういう体制はもっと普及すべきだとは思うのだけれども、すべての顧客にそれを求める訳にも行かず…。個人経営の飲食店とかだってなんらかのシステムが欲しいと思うことはあるのだろうけど、そういうところにシステムを構築することで、十分に食っていけるだけの報酬が得られるような世の中になっていないことが、独立開業を難しくしている要因の一つであるとも言えたりする訳で…。

4 は起業支援の話なのですが、これを求めることが国際的に見て贅沢なことなのかどうかおいらは知らないのですが、独立開業を夢見る人のご意見として、会社に縛られることなく、自分のペースで仕事ができる、という誤解があるのだけれども、それを実際にかなえるには、納期などに縛られない商売、すなわち、オーダーメイドではない金になる商品を既に持っていて、それをコンシューマーに向けて販売、もしくはサービス展開する、といった商売で勝負できる場合に限られることになる訳です。でも、それまで一労働者としてあくせく働いていた人が、そういう商品を作り出す時間を割くこと自体が難しかったりして、で、そんな時間を得る為に脱サラしてみたはいいものの、勝負になるようなものができあがらないうちに貯金が底をつき、あえなく派遣で仕事を探す、なんてのがありがちなオチだったりするのが実情です。これは SI で下請けやってる中小零細企業に関しても同様で、仕事が多くて忙しいときは時間的余裕が無く、仕事が少ないときは少ないときで今度は資金的余裕がなくなってしまう為に、なかなか自社開発に踏み切れずにいる。そういった辺りをうまいこと救済するような制度とかがあったりすると、コの業界ももうちょっと活気づくんじゃないかなぁとか思わなくもなかったりする訳です。

IPA が未踏IT人材発掘・育成事業なんてのをやっていたりしますが、これはこれで良いのですが、これだとどうしても凄い発明をする英雄的存在を発掘するアプローチ、ドラクエで各国の王様が勇者を捜し出すアプローチになってしまっていて、業界全体の労働者層を救済するアプローチにはなり得ないし、独創的な商売を育む土壌もなかなか根付かないのではないかとも思う。かといって、日の丸検索プロジェクトみたいなのは一部の企業を利するだけで、これも業界全体の活性化を促すものにはなり得ない。もっと、ソフトウェア企業がこれから作ろうとする物の価値を認めあえるような、財源とコミュニティが一体化したような社会的枠組みがあったりすると面白いんじゃないか、とか思ったりもするんだけど、庶民様の血税とやらでそれを実現するのはやっぱり難しいんだろうな、とも思う訳で…。

相変わらずまとまらないけれども、おいらの今のところの思考は、とりあえずこんな所。

で、せっかくなのでこぼれ話。おいらが今、会社として請け負っているお仕事なのだけれども、取引先の都合で、別の会社を1社はさんで契約して貰っている。

何でそんなことが必要なのかというと、事業を通して経費が適切に計上されているかどうかが審査される訳だけれども、事業全体の規模があまりに大きい場合、そのうちのいくらかを、うちみたいな無名の零細が請け負っていたりすると、それが使途不明金として疑われてしまうケースがあるからなんだそうだ。

結局の所、法が民間に対して信用を求めていて、それがうちみたいな零細には、結果として障壁となって立ちはだかっていたりする。法人は国に登記され、その事業内容も合わせて管理されるのだから、本来ならばその国こそが企業の信頼を担保するべきなのに、実際にはおいらたちは国にすら信頼されない、信用ならないならず者として扱われる訳だ。だからこそ、どこかから与えられる数少ないチャンスをものにし、信頼を積み重ねていかなければならない。

そりゃあ、奴隷にもなるよ。詐欺師にだってなる。おいらはどっちかっていうと、病気になる可能性の方が高そうだけれども…。

この時代に生まれて良かった2009年05月12日 19時08分34秒

少しだけ息抜きをする。

最近、妹と母親がブログを引っ越しした。後でリンクも直しておかないとな。

FC2 はなかなか高機能で使い勝手もいいからね。

ちなみに旧「友・遊・湯」はそのまま父親の専用ブログになるらしい (それとも出張から戻ったら一緒に引っ越すのかな?)。

しかしみんな、マジすげぇよ。パネェよ。

兄貴は土日はしっかりお父ちゃんエンジョイしてるし、妹も忙しいだろうに自炊も映画も欠かさないようだし、父親も相変わらずひっきりなしの海外出張だし、母親も母親で座骨神経痛に苦しみながら一人で家を守ってる。各々の、生きている様子が、ネットを通じて垣間見れる時代。その一つ一つに、おいらは確かに元気を分けて貰えてる。そんな感じがする。

最近のおいらは、昔いた会社の元同僚にして友人から紹介された (と、いうより頼まれた) 仕事に 1月から入り、 5月頭にサービスインの予定だったのが、4月から急遽任されたシステムの開発が間に合わず、今週末までというぎりぎりいっぱいの猶予の中で血眼になって開発を続けている。状況としてははっきり言って良くないのだが、今はもうやるしかないという気持ちで、GW も返上してとにかく作業を続けている。

自炊もしてるしお金にも困っている訳じゃないから、心配は要らないよ。これが終わったら、月末にマリーンズを追って広島旅行に行くんだ…。(予定)

……さて、仕事に戻るか。

風邪ひいた。2008年12月28日 10時51分33秒

37.0℃。喉っていうか鼻の奥が痛い。多分インフルエンザとかではないと思うけど…。

この年の瀬に風邪をひくとは…面倒くさいなぁ。

ブログ内スクリプトが Firefox 3 でも動くようになったー2008年12月06日 19時25分19秒

Firebug でエラーが出てる正確な場所を突き止めることができたので追ってみたら、スタイルシートにスタイルを追加している部分で複数あるスタイルシートすべてに同じスタイルを追加しようとしていて、それでこけてたらしい。最初に見つけたスタイルシートにだけ書き込むようにしたら動くようになった。よかったよかった。