« 2009年4月5日

2009年4月6日の投稿

2009年4月7日 »

1980年代のはじめは、パソコンを使うことはBASIC言語で自分でプログラムを書くことを意味しました。日本語で使える業務パッケージは、まだ普及していませんでした。Apple IIで動作する世界初の表計算ソフトである「ビジカルク」が発売されたのは、1979年のことです。先日キーエンスの資本傘下になったジャストシステムが、PC-9801用の「一太郎」を発売したのが、1985年5月です。

当時は「ASCII」「I/O」「RAM」といったパソコン月刊誌に、毎月のようにプログラムのリストが掲載されて、パソコンマニアはそれをパソコンに打ち込みながら、プログラミングを覚えました。私はその頃からパソコンに興味を持っていて、当然のようにBASICプログラマーになりました。

1980年代後半にはUNIXとC言語を覚えて、アスキーでリレーショナルデータベースInformixのソースコードを日本語が使えるように修正する仕事をしていました。INFORMIX社が第4世代言語「Informix-4GL」を出してからは、社内の業務アプリケーションを4GLで書くようになりました。

業務用のアプリケーションは、データベースのテーブルを中心に、画面とCRUD処理で構成されるのが基本です。プログラミングは一定のパターンがあります。しかし、テーブルが異なれば、各テーブルに合わせてそれぞれ個別にプログラミングしなければいけません。

しばらくするうちに、似て非なるプログラムを毎回一つ一つ書いていくことに飽きてしまいました。ちょうどその頃、Informix-4GLで使えるCASEツールとして、米国から「FourGen CASE Tools」が入ってきました。FourGenは、Informix-4GLのソースコードを生成するソースコードジェネレータでした。(そういえば、CASEツールは死語でしょうか。)

私はFourGenにインスパイアされて、自分が作りたい業務プログラムを生成するInformix-4GLのアプリケーションを開発しました。データベースのテーブル定義を読み取って、基本的な画面とCRUD処理を自動生成する「4GLのプログラムを書く4GLのプログラム」です。これなら生成されたプログラムを少し手直しするだけで、完成させることができます。このツールを使うようになってから、生産性は飛躍的に向上しました。この時から「プログラムを書くプログラム」に興味を持つようになりました。

それから10年を経て、再びプログラムでプログラムを作ることになりました。

コマーシャルオープンソースのCRMアプリケーション、SugarCRMはPHP言語で書かれています。業務に必要な一通りの機能を備えていますので、ほとんどの場合はそのまま使えます。ただ、業務要件によってはモジュールを新規で作る場合があります。(注 SugarCRMは、取引先、取引先担当者、商談、見積などのモジュールで構成されます。モジュールはデータベースのテーブルとそのアプリケーションのセットとお考えください。)

SugarCRMに自分で開発したモジュールを追加する場合、約40ファイルのSugarCRMの作法に従ったPHPのソースコードを用意する必要がありました。実際の案件でお客様のご要望に合わせたモジュールを、一つ一つ手作業で開発するのは効率が悪いです。

私は、SugarCRMのモジュールの仕組みを解析して、作法に合わせたPHPのソースコードを自動生成するプログラムを書きました。商品名を「CandyPotモジュールビルダー」と名付けて、正式に売り出しました。

CandyPotを使えば、開発者は専用のExcelシートに新規モジュールのデータ構造を記入するだけです。後は、CandyPotが新規モジュールのソースコードを自動生成します。数十ファイルが一瞬で生成されて、そのまま動く完成品になります。

CandyPotで作ったモジュールは、SugarCRMからは既存のモジュールと全く等価に見えます。必要があれば、SugarCRMのカスタマイズツールをそのまま使えます。また、手で細かいカスタマイズをすることもできます。自分で言うのも何ですが、非常に気分爽快でクールなツールでした。

私は、CandyPotは以下のような役割の人におススメしたいと考えていました。

  • プリセールス:
    お客様の要件に合わせたデモを営業段階で実際に動かして見せることで、成約の可能性が高まります。
  • プロジェクトマネージャ:
    プロジェクトのプロトタイピングのツールとして利用できます。
    複数のプログラマーによるプログラミングのスタイル・品質のバラツキをなくし、一定のスタイルと品質で管理できます。将来、プログラマーが異動してもソースコードのメンテナンスが容易です。
  • プログラマー:
    SugarCRM独特のフォルダ・ディレクトリ構造やプログラミングの決まりに合わせたテンプレートを短時間で作成できます。
    タイプミスによるバグは基本的になくなります。より高度なカスタマイズのために時間を有効に使えます。

CandyPotはたいへんニッチなツールでしたが、ありがたいことに買っていただけるお客様がいて売れました。また、ケアブレインズ(現オープンソースCRM)経由で、米国でも売れました。少なからぬ売上になっただけでなく、クールなプログラムを書けば海外でも売れることがわかったことは収穫でした。

CandyPotの成功で、「プログラムを書くプログラム」への関心はますます高くなりました。

そして、先日出会ったのが、住友電工情報システム株式会社のJava開発ツール「楽々Framework II」です。

(後半に続く)

テクネコ

« 2009年4月5日

2009年4月6日の投稿

2009年4月7日 »

» このブログのTOP

» オルタナティブ・ブログTOP



プロフィール

加藤和幸

加藤和幸

株式会社テクネコ 代表取締役。
ITを売る側と買う側の両方の経験を活かして、CRMとCMSのコンサルティングを中心に、お客様の”困った”を解決します。

詳しいプロフィール

Special

- PR -
カレンダー
2013年5月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
techneco
Special オルタナトーク

仕事が嫌になった時、どう立ち直ったのですか?

カテゴリー
エンタープライズ・ピックアップ

news094.gif 顧客に“ワォ!”という体験を提供――ザッポスに学ぶ企業文化の確立
単に商品を届けるだけでなく、サービスを通じて“ワォ!”という驚きの体験を届けることを目指している。ザッポスのWebサイトには、顧客からの感謝と賞賛があふれており、きわめて高い顧客満足を実現している。(12/17)

news094.gif ちょっとした対話が成長を助ける――上司と部下が話すとき互いに学び合う
上司や先輩の背中を見て、仕事を学べ――。このように言う人がいるが、実際どのようにして学べばいいのだろうか。よく分からない人に、3つの事例を紹介しよう。(12/11)

news094.gif 悩んだときの、自己啓発書の触れ方
「自己啓発書は説教臭いから嫌い」という人もいるだろう。でも読めば元気になる本もあるので、一方的に否定するのはもったいない。今回は、悩んだときの自己啓発書の読み方を紹介しよう。(12/5)

news094.gif 考えるべきは得意なものは何かではなく、お客さまが高く評価するものは何か
自社製品と競合製品を比べた場合、自社製品が選ばれるのは価格や機能が主ではない。いかに顧客の価値を向上させることができるかが重要なポイントになる。(11/21)

news094.gif なんて素敵にフェイスブック
夏から秋にかけて行った「誠 ビジネスショートショート大賞」。吉岡編集長賞を受賞した作品が、山口陽平(応募時ペンネーム:修治)さんの「なんて素敵にフェイスブック」です。平安時代、塀に文章を書くことで交流していた貴族。「塀(へい)に嘯(うそぶ)く」ところから、それを「フェイスブック」と呼んだとか。(11/16)

news094.gif 部下を叱る2つのポイント
叱るのは難しい。上司だって人間だ、言いづらいことを言うのには勇気がいるもの。役割だと割り切り、叱ってはみたものの、部下がむっとしたら自分も嫌な気分になる。そんな時に気をつけたいポイントが2つある。(11/14)

news094.gif 第6回 幸せの創造こそ、ビジネスの使命
会社は何のために存在するのでしょうか。私の考えはシンプルです。人間のすべての営みは、幸せになるためのものです――。2012年11月発売予定の斉藤徹氏の新著「BE ソーシャル!」から、「はじめに」および、第1章「そして世界は透明になった」を6回に分けてお送りする。(11/8)

オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。


サイトマップ | 利用規約 | プライバシーポリシー | 広告案内 | お問い合わせ