この記事には複数の問題があります。改善にご協力いただくか、トークページでこれらの問題について議論してください。(これらのメッセージを削除する方法とタイミングについてはこちらをご覧ください)
|
Helixは、1983年に開発されたApple Macintoshプラットフォーム向けのデータベース管理システムです。Helixは、グラフィカルな「プログラミング言語」を使用してアプリケーションにロジックを追加することで、プログラマー以外の人でも高度なアプリケーションを構築できます。Helixは、PCプラットフォーム初のマルチユーザーデータベース、オブジェクトベースのビジュアルプログラミングツール、そしてPCプラットフォーム初のリレーショナルデータベースでした。
Helix は、もともと1983 年にイリノイ州ノースブルックのOdesta Corporationによってオリジナルの Macintosh 用に作成され、1984 年後半に初めてリリースされたときに絶賛されました。
当時のMacは、ストレージとして400KBのフロッピーディスクしかサポートしていませんでした。当初、ユーザーはHelixをフロッピーディスクから実行し、Helixは「システムディスク」にインストールされていました。これは、ハードディスクストレージの時代以前はオペレーティングシステムが保存されていた場所です。この構成では、アプリケーションやデータのためのスペースがほとんどありませんでした。実際の用途では、ユーザーが2台目のフロッピードライブを追加し、OSとHelixを1枚のフロッピーディスクに、データをもう1枚のフロッピーディスクに保存することが想定されていました。こうした初期の制限にもかかわらず、Helixは強力なリレーショナルデータベースでした。
1986年5月、OdestaはDouble Helixをリリースしました。主な新機能として、カスタムメニューとメニューバーの構築が可能になり、「スタンドアロン」アプリケーションが実現しました。これに対し、オリジナルのHelixでは、明らかにHelix内で動作しているアプリケーションが生成されていました。より大規模なソフトウェアスイートの一部としてリリースされたHelixスイートには、RunTime Helixと呼ばれるスタンドアロンのランタイムバージョンも含まれており、これによりユーザーはフルバージョンをインストールしなくてもDouble Helixアプリケーションを実行できました。また、クライアントサーバー形式で動作するMultiUser Helixも含まれていました。
Helix製品ラインは1980年代を通じて継続的にアップグレードされましたが、同社はRemote Helixと呼ばれるバージョンの開発に多大な時間と費用を費やしました。これは、 VAXベースのデータベース上で基本的なHelix開発システムを実行するものでした。その狙いは、1990年代初頭に流行した「ビッグアイアン」システム上でMacのような操作性を提供することでした。同社はまた、データベース分析用の関連ツール、GeoQueryやData Deskもいくつかリリースしました。しかし、VAXの人気はすぐに衰え、製品が大きな成功を収めることはありませんでした。
1992年、Odesta社は分割され、オリジナルのHelixアプリケーションはスピンオフしました。Double HelixはHelix Technologies社でHelix Expressとして再登場し、「使いやすさ」ではなくパフォーマンスリーダーとして売り出されました。親会社は無関係ながらも多額の費用がかかる法廷闘争に巻き込まれ、Helixは低迷しました。1998年、Helix Technologies社はサンディエゴに拠点を置くメモリベンダーのThe Chip Merchant社に買収されました。同社は2000年にメジャーアップグレードをリリースし、Helix Client/ServerにTCP/IP機能を追加し、製品ライン全体のパフォーマンスを大幅に向上させました。しかし、メモリ価格の下落と景気低迷が重なり、The Chip Merchant社は2002年に倒産に追い込まれ、Helix社は法的に宙ぶらりんの状態に陥りました。 2004年に、日常業務を運営していたギル・ヌメロフ氏とマット・ストレンジ氏の2人が、無名のビジネスマンと長年のHelixユーザーからの資金援助を受けて同社を買収し、新しい会社QSA ToolWorksを設立しました。
QSAはHelixの共同開発者であるラリー・アトキン氏をHelixに復帰させ、その後MultiUser Helixのオリジナル設計者であるスティーブ・キーザー氏も復帰させました。Helixリカバリチームと名付けられたこの新しいマネジメント兼プログラミングチームは、Classic Helix製品をMac OS Xでネイティブに動作するように書き換える作業に着手しました。OS X Helix Serverは、3つのネイティブ診断およびメンテナンスツールとともに、2005年12月に出荷されました。
1か月後、AppleはPowerPCからIntelプロセッサへの移行をベースにした最初の製品を発表し、QSAは「ギアチェンジ」を余儀なくされ、コードをUniversal Binary形式に変換するプロセスを開始することになりました。これにより、 CodeWarrior IDEからXcodeへの移行が余儀なくされ、その後、3つの「エンドユーザー」製品のIntelネイティブリリースが作成されました。初期バージョン(「プレビューリリース」と呼ばれる)は機能が不完全で不安定でしたが、頻繁なアップデート(2008年だけで5回)でこれらの問題に対処しました。2009年と2010年にはさらに9回のアップデートが行われ、機能セットの完成、残存バグの排除、パフォーマンスの向上に重点が置かれました。
同時に、QSAはHelix IDE(通称「Helix RADE」)をOS Xに移植する作業を開始しました。当初は2009年12月に発表されたこのプロジェクトは、映画「2010年」を暗に示唆する「 Europa」というコード名で呼ばれていました。[ 1 ] 2011年6月、QSAは「予備リリース」の出荷を開始しました。これは、OS Xに移植された機能の一部(すべてではありません)を含むバージョンです。[ 2 ]機能の移植は2013年6月に完了するまで継続されました。[ 3 ]
2022年9月、QSA ToolworksはHelixソフトウェアファミリーを、ニューメキシコ州に拠点を置くBig Giant Donut Inc.に売却しました。同社は、複数の製造・テクノロジー企業にHelixベースのソリューションを導入していました。[ 4 ] Larry Atkin氏とSteve Keyser氏はBig Giant Donutに入社し、Helixのコンセプトに基づいた新しいソフトウェアプラットフォーム「Donut」の開発に取り組みました。[ 5 ] Donutは、最新の64ビットハードウェア上で動作し、ブラウザ内でクライアントソフトウェアを実行することを目的としています。Big Giant Donutは、この開発にあたり、Helixソフトウェアの最新バージョンを自社のウェブサイトから無料でダウンロードできるようにしました。[ 6 ]
Helixプロジェクトはコレクションと呼ばれ、Helix RADE( Rapid Application Development Environmentの略)によって作成される「ドキュメント」です。システム内では、Macintosh Finderに似た一種の「疑似デスクトップ」として表示されます。コレクションには、数千もの個別のデータベース(リレーションまたはテーブルとも呼ばれます)を含めることができます。Helixアプリケーションは一度に1つのコレクションしか開けません。ただし、ライセンスを購入することで、複数のコレクションに同時にアクセスできるようになります。ただし、アクセスできるコレクションの数は、主に利用可能なメモリ量によって制限されます。
コレクションを開くと、独自のGUIオブジェクトセットによって完全に駆動される2つの主要な部分を持つプロジェクトウィンドウが表示されます。左側には、作成可能な新しいオブジェクトを表すアイコンウェルがいくつかあり、右側のスクロール可能なウィンドウ(コレクションウィンドウと呼ばれます)には、ユーザーが作成したオブジェクトが表示されます。左側のウェルからアイコンをウィンドウにドラッグすることで、コレクション内に新しいオブジェクトを作成できます。これらのオブジェクトには、データを保持するためのリレーション(テーブル)、タスクを自動化するためのシーケンス(マクロ)、エンドユーザー向けのカスタムメニューを作成するためのユーザーなどがあります。これは、Helixの最も独特で強力な機能の1つです。
リレーションでは、データベーステーブル(関連するデータのグループ)が作成されます。リレーションには、データ型を定義するフィールド、データ間の関係を定義し、フィールドだけでは表現できない情報を作成するためのアバカス、データを整理してパフォーマンスを向上させるインデックス、データを検索するためのクエリ、情報を視覚的に構造化し、入力、変更、削除、印刷するための「テンプレート」が含まれます。「ビュー」はテンプレート、クエリ、インデックスを組み合わせたもので、ユーザーが情報にアクセスし、制御できるようにします。
アバカスは、計算式を作成するために完全にグラフィカルなシステムを採用しています。演算やフィールドを表すアイコンをアバカスのエディタウィンドウにドラッグすることで、必要な計算を記述し、データフロー図に配置します。例えば、「名の後にスペース、姓が続く」という式を作成するには、「followed by」アイコンをドラッグし、「名」フィールドをその最初の部分にドラッグし、2番目の部分にスペースを設定します。次に、2番目の「followed by」アイコンをドラッグし、最初のアイコンからの出力矢印を2番目のアイコンの最初の部分に入力し、「姓」フィールドをその2番目の部分にドラッグします。
Helix RADEは、デザインモードとユーザーモードの2つのモードで動作します。ユーザーモードでは、Helixコレクションが定義されたユーザーメニューバーの1つに開き、ユーザーは他のアプリケーションと同じようにデータベースを使用できます。デザインモードでは、開発者(または上級ユーザー)がデータベースのデザインを変更したり、フィールドを追加したり、新しいレポートを作成したりできます。
プログラミングを簡素化することを目的としているにもかかわらず、象徴的なプログラミング言語はしばしば「本質を見失っている」のです。プログラミングが難しいのは、入力しなければならないからではなく、複雑さがすぐにプロジェクトを理解できなくなるレベルに達するからです。理論上、グラフィカル言語はこの複雑さを大幅に軽減するのに役立ちます(例については意図的なプログラミングを参照)。場合によっては軽減されますが、多くの場合、問題を悪化させます。Helixは非常に寛容なツールであり、同じ結果に至る複数のルートを提供します。他のツールと同様に、熟練していないユーザーが複雑な計算を行うと、すぐに扱いにくくなり、効率的に作業するためには大きなモニター(または2台)が必要になります。しかし、熟練したユーザーは、その視覚的なアプローチが時間の節約と自由をもたらし、深刻な制限はほとんどないことに気づきます。
Helixは小規模から中規模のデータベース処理には非常に優れていますが、その長年の実績において、Classic Mac OSの協調型マルチタスク環境でのみ動作してきたため、大規模データベースでは不安定になるという共通の問題があります。プログラミング言語自体は複雑なデータベースを作成するために必要なスケーラビリティを備えていますが、 24時間365日稼働の環境で確実に動作しないため、Helixは100ユーザー以下のワークグループでの使用に限られています。しかし、こうした制限は急速に過去のものになりつつあります。QSAは2005年12月にHelix ServerのOS X版をリリースし、2006年と2007年には残りの製品ラインもOS X版で展開する予定です。
Helixに精通した方にとって、開発時間の短縮は計り知れません。Microsoft Accessのトレーナー/開発者としても活躍するある専門家は、プロジェクトの規模にもよりますが、HelixプロジェクトはAccessプロジェクトの30~70%の時間で完了すると見積もっています。この短縮効果は、特にプログラミング「言語」が不要なため、構文エラーが一切発生しない点にあります。Helix自体が開発者の構文エラーやプログラミングエラーを防ぐため、残る問題の原因はビジネスロジックのエラーです。すべての言語がこの問題に直面しますが、Helixはオブジェクトベースでグラフィカルなため、問題の追跡の難しさが軽減されます。すべてのオブジェクトが(コーディングではなくアイコンを介して)リンクされているため、システムはどのオブジェクトが他のオブジェクトによってどのように使用されているかを「認識」し、ビジネスロジックエラーの追跡を簡素化します。また、オブジェクトへの変更案によって影響を受けるすべてのものを簡単に特定できる方法も提供します。
Helix では、すべてのコードをグラフィカルに作成する必要があります。そのため、if...then...else 構造は、決定ダイヤモンドなどのフローチャート タイプのウィジェットを使用して構築され、ループはコネクタを使用して実装されます。
Helix のビジュアル プログラミングは、初心者にとっては習得しやすいかもしれませんが (技術者でない人でも直感的に理解できるフローチャート パラダイムを使用しているため)、記述するコードの量が多くなると、パレットからアイコンをドラッグするよりもずっと簡単かつ便利にコードを記述できる人にとっては特に、面倒になる可能性があります。
このため、Helix RADE が Intel Mac でネイティブに実行できるように更新されたときに、この機能を必要とするユーザー向けに「アバカス式言語」が追加されました。