時代と略歴
- 昭和40年生誕新潟県出身の両親のもと、東京の下町江東区に生まれる。
- 小学生正義の味方小学生低学年時代のヒーローは仮面ライダー、高学年になるにつれ、憧れはブルース・リーと大山倍達へ。映画「燃えよ!ドラゴン」を見ては、新聞紙を丸めたぬんちゃくを振り回していた。
- 〜中学生野球少年小学校の高学年になると野球少年に。放課後は後楽園で野球観戦。王貞治に憧れ、1本足打法をマネしていた頃。中学校では硬式野球部に入るも、中高一貫校で軍隊的な根性主義が肌に会わず退部。
- 〜20代前半バイク小僧バイクに目覚め、高校時代はバイト代のすべてをバイクにつぎ込む。YAMAHA RZ250など、当時出始めたレーサーレプリカを乗り回すにあきたらず、高校卒業と同時にレース専用車のTZ250を購入してレース活動へ。
- 社会復帰マックおたく25才、怪我と資金不足でバイクレースの道をあきらめ、一般企業に就職。OA機器の販売会社で Mac と出会い、個人の能力を拡張するパーソナルコンピューターの概念、Macintosh の持っていた独特の世界観に魅せられる。当時75万円した SE/30 を購入して、ITの世界へ。
- 1990年代CAD の世界へパーソナルコンピュータがビジネスや生活に一気に普及した時期。CADもオフコンとかUnixワークステーションからパソコンへとダウンサイジングしていた。特にMacのCADはデザイナー、設計者自らが使うものとして選ばれる。MiniCad(現在のVectorWorks)の日本販売代理店でプロダクツマネジメントに携わる。
- 20代後半働き方の目覚めMiniCad 開発元のDiehl Graphsoft Inc.を何度か訪ねるうち、彼らの自由で合理的・実践的な働き方に魅せられる。Washington DC郊外のオフィスで、プログラマは個室を持ち、週末は裏庭でバーベキューパーティをして過ごす彼らから大きな影響を受ける。当時はまだ小さい会社だったこともあるが、仕事はハードにこなしながら家族的な雰囲気でアクティブに働く姿に感銘をうけた。
- 30歳独立1995年、ソフトハウスを退社してふらふらしていた頃、以前の取引先から仕事を頼まれてフリーランスになる。ホームオフィスでの自由な働き方が肌に合い、仕事の増加とともに法人化。パートナーの順子も合流して、エンウィットとしての活動を開始。
- 1996年移住ちょうど、インターネットが普及期に入り、全国的にOCN専用線が利用出来るようになる。OCNエコノミー128Kbpsが4万円/月弱という時代だった。当時は海外製ソフトのローカライズ業務が中心で、ネットワークさえあれば仕事が出来たことから、家賃が安く自然環境も良い八ヶ岳南麓へ移住。
田舎暮らしを始めるきっかけや考え方などは以下の記事にまとめました。
- 2000年成功と挫折念願であった自宅兼事務所となるログハウスを北杜市小淵沢町に建築。独立当初は、比較的事業も順調だったことから仕事場の拡張の意味もあって自宅兼事務所の建築に踏み切ることが出来た。しかし、タイミング悪く IT バブルが弾け、わが社も事業領域の大幅な変更を余儀なくされる。2010年頃まで事業の再構築に苦労することになる。
- 事業の模索CADのノウハウを活用した開発案件、ソフトウェアのサービス化ASP事業、その後の IoT につながる開発案件など、多様な取り組みを実践する。
- 2005年身体改革40歳になる頃、バイクレース時代の古傷、パソコン仕事による運動不足や不摂生ともあいまって、膝痛と腰痛で10分と歩けない程に体調が悪化。一念発起して身体改革に取り組む。
独立起業する人にとって、健康管理は重要なテーマです。以下、健康に関する記事を書いています。
- 2009年チャレンジ投資家や協力者の支援も得てアプリ開発などの自主企画事業にチャレンジする。翌2010年からは薮内正幸美術館との提携によるグッズ事業もスタート。
独立起業、副業を考える人にとっても、一般の企業経営においても、事業領域の選択が重要な時代になりました。好きなこと、有意義だと思えることでないと、良いアイディアも事業に取り組む情熱も維持できません。わたしたちが、自然やいきもの、博物画や動物画に関わる事業に取り組んでいる背景を次の記事に書いています。
プログラミング遍歴
Think Pascal
1989年にMac系の会社に営業として入社したのですが、技術やプログラミングに関心があったので、プログラミングも自力で勉強しました。C言語はポインタの概念が難解でしたが、Pascal 言語は理解しやすかったのでゲームを作ったりしながらプログラミングの基本を学習しました。
当時は MiniCad というCADソフトのカスタマイズも MiniPascal という Pascal ライクなカスタマイズ言語が採用されており、CAD のカスタマイズも出来たので、ビジュアルプログラミングの経験が出来たことも有益でした。
Hyper Card
Hyper Card では、ボタンやカードにスクリプトを書くオブジェクト志向プログラミングの概念を学びました。いま思えばアホくさいスタックを作っては随分と遊びました。お遊びの域は出ないのですが、手続き型プログラミングとは違うオブジェクト志向の概念を把握することに役立ったように思います。
MPW Rez / ResEdit
営業時代からプログラミングの勉強をしていましたが、少しずつ、ローカライズ(日本語化)に関連する業務を担当するようになり、リソースという画面構成要素を生成するためのリソースコンパイラ=MPW Rez やリソースエディタ=RedEditを利用するようになります。リソース用のソースコード内の文字列を英語から日本語に修正して、ボタンや表示領域のサイズを調整してコンパイルする作業です。
日本語と英語の文法も考慮して、文字列アラートやメッセージの文字列にメタキャラクターを配置するとか、プログラム的な考え方をする機会が増えていきました。
Macromedia Director
1990年代はソフトウェアのヘルプやマルチメディアコンテンツのオーサリングには Macromedia Director がデファクトスタンダードの時代でした。Lingo というスクリプト言語でプログラムを組むことができました。ソフトハウスをやめて独立した後も、キオスク端末やプロトタイプ開発で多様な開発案件を担当させてもらいました。
Perl
1990年代も後半に入り、インターネットが爆発的普及期に入ると、Web プログラミングが必要になります。サーバー側で動作する CGI プログラミングは Perl で書くことが多かった時代です。Perl もめちゃくちゃクセのある言語で苦戦しましたが、そこそこお世話になっていた時期があります。
正直なところインタープリター(逐次変換)言語であり、言語仕様もアクロバティックというか、複雑怪奇なところがあり、本格的に高機能なアプリケーションを書ける気がしなくて、積極的に取り組むまでに至りませんでした。しかし、当時から Perl は実にプラクティカルな言語で、実はかなりのことが実装できました。
いま思えば堀江貴文氏を始め、 当時 Perl をがんがん使いこなしてた人は1990年代後半のインターネット成長期の波に乗り、大きな果実を得たように思います。
Java
当時の Sun Microsystems、Javaの生みの親 である James Gosling や Bill Joy がかっこよくて、Write once, run anywhere(一度プログラムを書けば、どこでも実行できる)というコンセプトにも共感し、一時は Java 信者でした。Perl はどこか古くさく感じて、Java に未来を感じていたのです。
WebObjects
Apple の OS が OpenStep 由来の OS X になり、Next で培われたオブジェクトフレームワークの WebObjects も Macにやってきて Java で動くようなります。Enterprise Object Framework など、洗練されたオブジェクト志向にも魅せられて、一時期は WebObjects に深入りしてしまいました。個人的に WebObjects に慣れてきて、さぁこれからという頃に、Apple は WebObjects をお蔵入りさせてしまいました。
その後、Java も Oracle に買収されてから使いにくくなってしまいましたし、当時 Java やオブジェクト志向フレームワーク、データベースのO/Rマッピングに感じていた理想や未来感を思い出すと何とも複雑な気持ちになります。
まぁ、自分も若かったなぁということですが、Java やオブジェクト志向に抱いた理想の大半は幻想に近いものであったことも事実で、より実践的=Practical であることが重要なことも、その後の経験で学びました。
Adobe Flash / AIR
Adobe Flash も残念な運命をたどった技術です。 Flash の言語である ActionScript も3.0になってからオブジェクト志向で書けるようになり、単なるゲーム・アニメーションソフトのオーサリングソフトから、リッチなUIをもったビジネスアプリケーション開発のプラットフォームとして成長する可能性と勢いを持っていました。
わが社でもマルチメディア動物図鑑のプロトタイプやセンサーネットワークのビジュアル化システムなど、多様な案件で利用していました。
しかし、スティーブ・ジョブズが Flash 排除の方針を出して、流れが変わってしまいました。Adobe も調子に乗りすぎた感があったとは言え、Flash が IT 業界から排除されることになったのは、もったいないことでした。Adobe ももう少し品質管理や普及対策を慎重にやっていれば、それなりの立場は維持出来たような気がします。
特にプラグインは、スティーブに非難されても仕方がないような状態であったことも事実ですから仕方ありませんが、AIR ランタイムとセットにしたオーサリングソフトとしての Flash を残す方法を考えても良かったように思います。実際、AIR ランタイムのサポート自体は2020年以降も継続しているんですよね。開発環境側のFlashがディスコンなので、新しい開発は出来ないのですが。
2020年にプラグインの Flash Player のサポートが終了し、一時代の終わりということですが、IT の世界が失ったものも大きいような気がします。
各種 SDK
アプリケーションをプラットホームとした開発言語と開発環境も様々なものがあります。わが社では、VectorWorks 内蔵のスクリプト言語である VectorScript や SDK を利用して、ドームハウス専用のプラグインを開発するなど、SDK も案件や状況に応じて活用しています。3D CAD系では、VectorWorks の他にも Rhinoceros などもPythonでカスタマイズ出来るようになっており、3D CAD を言語で操作すると従来では考えられなかったような造形が可能になり、劇的に効率化業務もあるので、注目している分野の一つです。
データベース系でも FileMaker プラットフォームのスクリプトを利用するなど、アプリケーションに用意されたスクリプト言語やSDKを活用することで、効率的なソリューションを構築出来る場合も多いので、SDK やスクリプト言語も積極的に活用するようにしています。
PHP
PHPは特に思い入れもないのですが、何と言っても便利で良く使う言語です。最近では、WordPress に使われている言語として、WordPressのカスタマイズで使う機会が増えています。
JavaScript
JavaScript は、Webサイトのフロントエンドとして、UI/UXの実装に良く使用する言語です。CSS とJavaScript でかなりのことが出来るようになりました。
わが社でも、Windows/Mac や iOS/Android など、複数のプラットフォームに展開する必要があるプロジェクトなど、あるいは将来的な移植性・可搬性を重要視するプロジェクトなどでは、出来るだけ、HTML5(JavaScript + CSS)で実装しています。
HTML5で書いておけば、Windows であればEdgeベースのWebビューをUWP(Universal Windows Platform)アプリケーションで、iOS でもUIWebView をアプリにパッケージ出来るので、UI/UX部の移植性を高めることが出来ます。
Objective C
弊社では野鳥の鳴き声図鑑などの iOS アプリを Objective C で書いてリリースしています。2009年の WWDC に参加して、2010年に iOS アプリをリリースしたので、比較的、参入は早い方だったかと思います。
Objective C も当初はその変態的な構文に悩まされましたし、慣れるまではかなりの時間がかかりましたが、いまとなっては Objective C に慣れてしまい、なかなか離れられません。
もっとも今後の潮流は Swift になるでしょうから移行するタイミングを見計らってまして、2018年にリリースした「日本の豆」から Swift で実装しています。
Swift
2014年の Swift 発表にはびっくりしました。静的型チェックとか、Objective C に慣れていると窮屈なことも多いのですが、Swift が開発言語としてよりモダンなものへと進化していることは確かです。Swift Playground や Swift UI など、Swift がプログラミングの敷居を下げ、新しいUI/UX体験にとっても有益であることは間違いないので、Swift にコミットしていきます。