#LinkTable
Explore tagged Tumblr posts
Text
WebObjects/TANK Web Server Application
TANK Webサーバーアプリケー��ョンは動的に動作するサイトを構築するためのPhoenix DesktopにおけるWebサーバーアプリケーションである。これはWeb Capsule上で運用される。通常���専用のCOMブラウザに対してサイトを提供するためのものだが、Objective-Jを使うことなどによりWeb標準のブラウザで読み込むサイトを生成することも可能である。
単純に言ってTANK WebサーバーアプリケーションはLinkTableで抽象的にサイトを構築してそれをバックエンドで透過的に実行する設計思想といえる。
GUIのマップ機能であるLink Tableを使ったデータベース構築によりサイトを抽象的に構築可能、バックエンドで動作するそれぞれのモジュールは透過的にそれらのLink Tableから割り当てられて呼び出される、クラスは継承も可能
サイトの構成はKsvn【これはLinuxのKsvnとは異なる】によってバージョン管理可能、必要に応じて派生させたり復元したりできる
ページのインターフェイスはそれぞれのデータ構造体にスポットライトを当てることにより自動生成される
プロトタイプをテンプレートにして改造してサイトを構築
Visualizer開発環境と連携してプログラムをサイトに組み込み可能
全てObjectiveに動作可能なためバインディングされてライブ反映される
サイトを設定して構築してコミットしてサービスのポートを開けばサイトは公開される
ログインサービスを組むことも容易に可能、クッキーも利用可能
SSLなどの暗号化のモジュールを装備、ストリームは全て暗号化(これはルーターをパケットが通った時の攻撃者に依る改ざんを検出できるようにするためウイルスに感染しにくい)
拡張機能をインストールして利用することに依る拡張性、拡張機能の例:MediaWiki、WordPress
大体HTML・正規表現・Perl・XML-XSLT-HTML・CSS・LaTeX・XUL・DTD・PHP・MySQL・Apache・CoreData・Firebird・SSL・Java・JavaScript・Plasmoid・Objective-J・SVG・Animation PNG・milKTouch・Animation SVGなどのようなプログラムを組み合わせて作られている
サーバーはAjaxを使うことにより閲覧者にPush通知を送ってPullによる更新をライブで可能、ページは常に最新である、よってリロードが不要
Web標準のブラウザで読み込む場合ブラウザを判定して最適なページを送ることが可能
GUIでサーバープログラムを設定可能、Psvnを使って設定をバージョン管理可能
サイトごとに管理者用のインターフェイスを利用可能、これを使ってデータを入力してデータベースを構築したり、専用のインターフェイスでアクセス解析したりできる
サイト設定の一環としてDNSアドレスを取得するためのツールを備える
Playgroundでローカルでテスト実行可能であり、Instance Viewを備えるためリソースの状態を監視しながらデバッグ可能である
OutlineEditでスタイル化された文章を書いて、それをデータベースのレコードに割り振って入力することに依ってページのテキスト要素を指定可能である
テーマ機能を備えているためサイト全体のテーマをテーママネージャで切り替えることに依って一括して切り替え可能である、テーマをカスタマイズして新しいテーマを作成・改造することも可能、CSSのみでなく装飾のための画像やレイアウト構成もテーマの中の要素として一括して切り替えて扱われる
GUIのツールを主体とし豊富に備える、CUIのインターフェイスとEdgeソースコードエディタも付加的に装備する
サイトのプロトタイプの共有機能を備え、プロトタイプマネージャやCOMブラウザからサイトのプロトタイプをダウンロード・共有できる
動的ページとして生成されるのは機能のインターフェイスとしての一時ページであり、リファレンスのような文書としてページとして扱われやすいものはXMLのキャッシュで構造を把握して必要なところのみを動的に組み替えた上で静的なページとして書き出す
テキストエディタでページを記述してサイトを構築するのは煩雑過ぎてしかもインタラクティブ性に欠ける。確かにZ上でTANK相当のASIMOVなアーキテクチャを組んでC上でHTMLなどに落としこむことは可能だが、上記の理由から使いやすくなく実用的でない。
0 notes
Text
CCD Backends Essencial
Phoenix Desktop CCDがどういった設計思想で成り立っているかの記事。本当は内容も書きたかったのですが、かなり長文になりそうなので、リストだけ載せます。
ASIMOVなアルゴリズムと絶対は一つしか無い
ASIMOV・lack・buffer・freshの原理
自由と秀逸なデフォルトと使いやすさ
自由とカスタマイズ性、柔軟で詳細な対処
リーダー制とトップダウン型、烏合の衆の防止
Siriやマクロの装備、手動の逆の自動化と高いレイヤー
CUIの開発効率性とCCD min Systemのサブセット
GUIの使いやすさと実用性の証明
Zの実装を学ぶ芸術の重要性と草の根ベースのオープンコンテント
テキストを論拠とするよりリッチなマルチメディアの有用性
OLEとremakeとライブ更新と自動のpub
CCDというエキゾチックなアーキテクチャ
VividテーマとGaussian Glassテーマ、Vividアイコン、識別性が高い
expod-syncとEnvGroupとCompressor
Local CapsuleとX KitとCCDn
STDDCとライブラリ管理ソフトのコンテンツ引き渡し
ライブラリのLossyとコンテンツの重要度
Absolute Scalingと解像度非依存、実寸の画像
裏サイトとunderwaterとunderBuild
Blu-ray・DVDの再生とリッピング、キーデータベース
ディスクイメージキャッシュのマウント
Wi-Fi TimeMachineのRAIDによる差分データの保全
Phonによる無線インターネット網へのアクセス
協力と信頼に依る光の青のコミュニティー
MachとEnterpriseの提供、Java版はどこでも動く
TANK WebサーバアプリケーションとLinkTable
Visualizer開発環境とLinkTable
type-dなデータ構造体とツールとメソッド変換器、これがシステム
Objectiveでライブ反映なUnityデスクトップ
手順でダイアグラムなGNOMEデスクトップ
モジュール化とbin-bin、インターフェイスはアプリケーション
Apple的価値観とUbuntu的価値観の継承と融合
自動保存と無限Undo、リズーム
Liquid Storageの柔軟なシステム構成、ハードウェアに制約されにくい
ベクトルベースのObjectiveなグラフィックサーバー
システム移行に依るシステムの継承、EnterpriseからMachへの移行
Carbonを活かした下位互換フレームワークの実行
オブジェクト及びミドルウェアに依るBreak Limiter、音量の安全
デスクトップ及びモバイル及びタブレットによる空のシステム
ウイルス感染でも安全なミドルウェアのTouch IDによるログイン
ロック画面で使える制限されたロック画面の機能
空のパッケージマネージャによる拡張性、システムパッケージは削除できない
著作権法は平等と情報の自由を犯した悪法
Managerに依るフォントや壁紙のダウンストール
ウィジェット・ツールキットのトンネルと一括テーマ
エラー時のパッチ用のマクロの起動、自動ダウングレード
段階的インストールによるインストールツールのインストール
フロントエンドとバックエンドの対応、抽象化
互換性の規格と最善の規格の両採用による利便性と性能の両立
3Dインターフェイスに依る管理・編集に向いたデスクトップテーマ
輪郭でウィジェットを識別し易いフラットテーマのモバイルOS
宇宙をラッピングした空のUIの利便性
MEDのある人向けの安全性の高い空のインターフェイス
フェニックス・ヒューマン・インターフェイス・ガイドライン
プログレスの一時停止・キャンセル・保存機能
Hands OffとVaultsと用事の別デバイスへの引き継ぎ
COMブラウザとウィジェットインターフェイス、WebObjects API
CrowdsとOpen ID、サイトの連携、LDAPによるサーバーのチェーン連結
全ストリームの自動暗号化とセキュリティー
ファイルシステムとメモリとストリームの自動圧縮
全てのダウンロードデータの常駐ウイルススキャン
ウイルススキャナのウイルス定義の定期自動更新
ライブラリの分割光学バックアップとマージに依る復元
bvフォーマットを使った動画圧縮、cosine
Quality Fading:重要度で動画や音声の圧縮レベルの品質を決める
flush Editerによる自動スピードハック用のフレームワーク
NISEの管理に依る並列したプロセスの処理のリソースの適正な割り当て
G5 Optimizationによるバイトコードの最適化
dpdfによるスクリプトを利用したファイルフォーマットの完全な拡張機能
Remote XULによるオンラインアプリケーション
XCloudによるデスクトップ環境のクラウドサービス
Velonicaエフェクトサウンドサーバに依る高音質の実現
依存を内部で解決し低レベルでフックするXQuartzによる簡易な移植の実現
Objective-Jのパーサーに依ってどんな言語も動かせるCOMブラウザのスクリプトエンジン
1フレームに依る適正な画面表示更新、ブロック全体で更新する
QuartzTypeによるバッファを使った描画汚れのないグラフィックサーバー
パワフルな汎用ソフトとNightcore-makerによる専用のインターフェイスのソフト
Bridgeアプリケーションに依るローカルでのオンラインアカウント情報の保持
Misson Controlによるマルチデスクトップ機能とフルスクリーンアプリケーション
拡張機能機構による拡張性と軽量化の実現
Collaboration Desktopによる共同編集機能
一つのアカウント内での複数のデスクトップ環境の同時起動
デスクトップ環境によるウィジェット・ツールキットのトンネルの選択
インストール作業時の電源接続の確認
Store Managerによる管理体制の記録・自動実行
ASCIIテキストの文字コード記述に依る可変長の多言語テキスト
システム言語のCOMブラウザ及びアプレットに対する透過的な言語設定
ドロップシャドウやアニメーション効果を用いた直感的なデスクトップ
Compizのような無駄なアニメーション効果の排除
LightTableを使ったアナログ的なデスクトップ機能の提供
コンテンツダウンロード時のメタデータとリンクを含んだ自動のライブラリ組み込み
テキストを記録に使った動画や音声のフォーマット、全て可変長
オブジェクト指向でユーザーの操作を組み合わせられるマクロの実行
sherinar BridgeによるZのsherinarへのアクセスサービス
Liquidなウィジェットの開発しやすさと利用時の固定レイアウト
Import Toolによる他のOSからのコンテンツや設定のインポート
GPUのサポートに依る並列処理の効率化
Resource Serviceによるファイルシステムアクセスの抽象化
ファイルのアクセス権の廃止とディレクトリのアクセス権
Dockおよびデスクトップウィジェットのショートカット、COMページやコンテンツを登録
メディアのObjectiveのデータに依るメディアの自動処理
IPアドレスやPhonアドレスは可変長にすることによってアドレスの枯渇を防止
常時アンチエイリアス、半透���のサポートのグラフィックサーバー
ダウンロードや編集など特にメディアなどのコンテンツを扱いやすいデスクトップ環境
ライブラリ管理ソフトを使ったスタックに依るシームレスなフォーマット変換
本来宇宙のプログラムを開発者が空としてカプセル化し規格化するため考えずに安全に使える
空はアーキテクチャとしての必然的なレイヤーとしても正しい
仮想マシン・XQuartz・Qt・Cocoa-GTKのBigLandと移植の方法
ライブ反映とその逆のシステム変更のコミット
libbmpの原理、インスタンスとして扱われる画像は生の画像フォーマット
ヴァージョンラベルの原理、さまざまなヴァージョンが存在し使い分けられる
Blu-rayライブラリ分割バックアップ、マージして復元
Package jailの原理、パッケージは自分自身の領域にしか権限を持たない
sand-boxの原理、サイトからローカルは制御出来ない
XPCOMモジュールインターフェイス、システムをsand-box内で分離動作させる
GUIのレイアウトASIMOV、ウィジェットの要素を把握しGUIにそれを配置する
libgtkmmの原理、手順のプロジェクトでも成果物が強ければ取り込む
インターフェイスメモ、随所で管理のためのメモを作成可能
Necko API、インストールアプリのライブラリなどへのアクセスの随時操作認証
luminousの原理、古い実装でもバグが少なければ取り敢えず装備しても動く
堅牢なプログラム、ウイルスやバグを防ぐために堅牢に組むモジュールもある
BitTorrentをCrowdsに使う、サーバー・クライアント型を認証に使ったP2P
ASIMOVな実装を得るため、単純化せず必要な複雑さは排除してはいけない
学術検索サイトや著作物データベースや音声素材ライブラリなど専門的なサイトサービスへのリンクもCOMに装備する予定
原理的思考が薄くても抽象化を排除しない、抽象的にシステムを構築する
原理を見抜くことに依って堅牢で明快な行き当たりばったりでないシステムを組む
GUIのhibrelationや技術的なhibrelation、ASIMOVとの差異
ソフトウェアボタンに依るハードウェアボタンの代替的装備
bvチップの装備に依る動画再生・編集の効率化と省電力化
Condensedフォントを使ったGUI表示で表示文字数を増やす
ASIMOVな原理に則ったやり方であれば実行上の子細をトリッキーに詰めれば大抵実現できる
CCDのアーキテクチャがわかれば後は適材適所でモジュールを組み込めば良い
ASIMOVに組めばそのままのアルゴリズムの通りに動く、最も適切に動作する
jailはシステムの一部だけ��仮想環境を作るときに汎用的に使える手法である
ライブ反映とコミット、繋がっているところは全部ライブ反映で更新し、変更点を打ち出す時はコミットする
感覚的な手法評価は正しいことが若干多い、例えば高水準言語は正しい
WebObjects API、COMサイトからのローカル機能はユーザーの操作なしに実行しない
Apple Note InterfaceはすべてのアプリケーションUIの概観である、これを汎用的に使ったりデフォルメしてそれぞれのテンプレートとする
実存的な処理とASIMOVな退避領域を使った処理の並行実行手法
技術情報を積極的に公開して共有することで知識を持っている人を増やしてより優れた開発を推進する
Abstructの原理、構造体は適切にそのままのjustな構造体として設計されるべき【ASIMOVとほとんど同義】
CUIやロジックのソフトウェアではオープンソースのほうが堅牢でバグが少ない
どのような端末でも汎用機ならインターフェイスの構成要素は同じ、ただ形態や複雑さが違う
Hacking XとHacking CCDはシステムエンジニアリングの学習のためにシステムの解析を行うための環境、実用を求めるメインのシステムと違い、jail内にハッキング用の環境を作る
Plasmoidの原理、原理は宇宙で自由でなければいけなく様々な手法を編み出すことが出来るが、目的とする用途が決まると使い方が制約されるのが正しくなる
ASIMOVに成り立つならその手法は有効かも、あとはギミックのバグ取り
ミドルウェアは高負荷でも高速処理なため高負荷がかかる作業には装備
長文の文書には概説の項を冒頭に付ける、例えば使用許諾やガイドラインなど
実際の説明はPhoenixの技術書類のWikiを調べれば書かれているだろう。設計原理についてはCCD LAWS:CCDのシステムエンジニアリングの原理リストも参照のこと。
0 notes
Text
Phoenix CCDの機能と使い方の大綱
この記事ではPhoenix CCDのおおまかな利用法と機能の構想について記述する。これらは基本的にアングラに開発が進んでいるunder Buildのバージョンについて記述する。
アーキテクチャの発想
Phoenix CCDではアプリケーションをインストールして機能を追加してシステムを拡張するのではなく、システム全体で機能を実現し、その機能に実装を割り振ってシステム全体を統合された一つの環境として装備するという発想でシステムが設計されている。これらはシステム全体のアーキテクチャとパッケージマネージャの装備に依って実現される。
Phoenix CCDは空でデスクトップ環境を構築しユーザーがストレスなく効率的にデスクトップを操作することが出来るように設計されている。空であるため、簡単にはユーザーはシステム破壊できないという点も特徴だろう。宇宙のシステムが使いたければPlasmaデスクトップをインストールすれば良い。
コンテンツの管理・編集
ライブラリ管理ソフトを起点にして操作を開始する。ライブラリ管理ソフトでテンプレートから新規項目を作成して、それをPaperScreenあるいはLightTable上に展開してプレビューする。ライブラリ管理ソフトには簡便な編集機能を装備し、PaperScreenおよびLightTableも簡易なツールを使った編集が可能である。
PaperScreen上に展開した項目を外部編集アプリケーションに手渡して詳細な編集をすることになる。これはインスタンスを一つに共有して同期する仕組みになっているため、複数の外部編集アプリケーションで同時に同期して編集することが可能である。ちなみに外部アプリケーションは詳細な再生用のアプリケーションであることもある。
コンテンツは全て自動保存であり、履歴はメモリのバッファとファイルシステムのバージョンを透過的に利用して無限Undoで辿れるようになっている。コンテンツはDsvnというバージョン管理システムで管理されるため、派生を含む様々なバージョンを管理できる。
COMとコンテンツのアップロード・ダウンロード方法
Webブラウザに相当するのがCOMブラウザであるが、安全性が認証された登録されたサイトにしかアクセス出来ない。そのためウイルスに感染する危険性がかなり排除されている。
Note Interface主体のCOMブラウザではWebページのようなNote Interfaceが主体だが、Widget Interfaceも少し持っているため、ツール的な機能も利用できる。これと対称にWidget Interface主体のCOMアプリケーションではツール的なインターフェイスとなっている。小回りが必要なCOMアプリケーションではFolder Interfaceが使われる。
個人のプロフィールなどプライバシー情報をSNSで公開する場合はWeb Capsuleというサーバーを立ててピア・ツー・ピアで相手のマシンに直接プロフィール情報を送るのが推奨である。この方法を使うことに依ってクラウド機構に個人情報を握られたり流出したりするのを防ぐことが出来る。
たとえばPhoenix SoundCloudやPhoenix Vimeoのような動画COMサイトでは、プレイバックはシステムのプレイバックと共有される。システム中のプレイバックは別々に同時に鳴るということは(Paper Widget以外は)まず無い。
ダウンロードはコンテンツに備え付けられたダウンロードリンクから行われる。ダウンロード時には自動でウイルススキャンされ、ウイルスが検出されれば自動でそのコンテンツは削除される。(隔離せずすぐ削除するのはウイルスに感染したファイルはもともと使いものにならないからである。)ウイルススキャンが終わると、自動でライブラリにインポートされ、最近ダウンロードした項目に追加される。
コンテンツをアップロードするときは、Web Objects APIを通してライブラリの項目を投稿記事に登録してメタデータを記入してアップロードするとアップロードされる。
Media Center
Media Centerはメディアの再生・閲覧専用のインターフェイスであり、全画面で動作し、リストと3列カラムおよび全画面スクリーンを使った矢印キーで移動してEnterで決定する非常にシンプルな10 footインターフェイスを装備している。ただ複雑な操作をするためにGTK的な矢印キーに依るウィジェットの移動も追加的に利用される。
Playback CenterとHands Off
システム全体のプレイバックはPlayback Centerによって管理され、グローバルメニューバーから再生・停止や次の曲などの操作が可能である。Playbackはシステム全体だけでなく別のマシンやデバイスとも同期され(Hands Off)、別のマシンやデバイスに移った後もそのプレイバックを引き継いで利用を続行することが可能である。
Hands Offはプレイバックだけでなく書類の開いている状態なども引き継ぐことが可能である。これらは状態がCenterで小さく表示され、管理・編集や別のプレイバックの発生などを操作したい場合はCenterからそれらのメインアプリケーションを起動して呼び出すことが可能である。
ライブラリの同期とEnvGroup
ライブラリは常に無線でインタラクティブに同期され、ユーザーがコンテンツに指定したセキュア項目のみ有線で同期される。Phoenix Mobileなどの画面サイズが小さいデバイスにおいてはLocal Capsuleなどのマシン上でダウンサンプルされてからストレージに同期される。
Phoenix CCD Desktopを中心とするPhoenix Familyはユーザーの利用領域に対して(ライブラリを同期するなど)一つのまとまったデジタルデバイス環境を構築する。これをPhoenix CCDではEnvGroupと呼ぶ。基本的にLAN環境はLocal Capsuleと言うLANの機能を一手に引き受けるサーバーマシンをLAN内に一つ配置してEnvGroupを構成しこれがハブとなるが、様々なマシンに接続されたデバイス、例えばプリンタや光学ドライブ、外付けハードディスクや無線LANルーターはEnvGroupに参加しているマシンでは認証さえ行えばどのマシンからでもアクセス可能である。LAN内で処理を分散処理するCompressorの機能もEnvGroup全体で設定すると扱える。
CCDソフトウェアセンターのパッケージマネージャとアプリケーションの拡張機能
CCDソフトウェアセンターでパッケージをインストールすることが可能で、これは依存を解決してパッケージをインストールすることが可能である。つまり実行環境などは必要とされた場合に自動で先にインストールされる。パッケージを指定してインストールされるのはOSのバージョンに合った最新安定版である。このパッケージマネージャはシステムを破壊することが出来ないようにチューニングされている。
拡張機能自体はパッケージマネージャと違って拡張機能同士では依存を解決しない。ただし拡張機能が必要とするパッケージはパッケージマネージャで依存が解決されて引っ張られてシステムにインストールされる。
TimeMachineと光学メディアのバックアップ
Wi-Fi TimeMachineおよびTimeMachineはシステム全体を無線で繋いたマシンのストレージや外付けハードディスクに差分バックアップするシステムである。
光学のバックアップ機能もあり、ディスクに分割してライブラリをバックアップし、システムの復元時にウイルススキャンしながら一つのライブラリにマージして復元することが可能である。これはZでは出来ないC特有の方法で、ハードディスクだけにバックアップした時にウイルスにシステムが感染してデータが全て破壊された場合にでも安全にバックアップを取るのに役立つ手法である。
TimeMachineは複数のストレージにバックアップを取ることが出来、TimeMachineのストレージの片方がクラッシュした場合でも、もう一方の方のバックアップを元に交換したストレージにバックアップをコピーすれば、TimeMachineに保存されているシステムの差分のデータも失われることはない。
Phoenix MobileとPhoenix Tablet
Phoenix MobileやPhoenix Tabletはアプリ方式を採用し、パッケージ管理システムで細かいパッケージを管理するのではなくCCDアプリセンターでアプリ単位でアプリをインストールする仕組みになっている。これは依存は基本的に明示的ではないが、OSに合わせてバージョンは選ばれるしシステム拡張はバンドルというまとまりではあるものの依存が解決されてインストールされる。
Phoenix Tabletは画面の広さを活かして動画や画像や書類などもっとビ��ュアル的なものを表示するのに利用される。
Phoenix FamilyとしてWatch OSも開発して提供されている。Apple Watchなどのスマートウォッチ上で動作する。インストールするためには同期設定されているiTunes上でApple Watch用のアプリをファイルからインポートしインストールして、Apple WATCH OSをJail-Breakingしてケーブルあるいは無線でPhoenix CCD Desktopに繋ぎインストールすることになる。この方法が使えない場合はApple Watchの機能と連係して動作するシステム拡張をPhoenix Mobileにインストールしてペアリングすることになる。
以下の様な環境を組むのが最善のデジタルデバイス環境である。【凡例:ハードウェア/OS】
MacBook Pro 15inch Retina Display (All SSD)モデルあるいはiMac/Phoenix CCD Desktop
MacBook Air/Phoenix CCD Desktop(LXDE・CCD min System・CCDn・XCloud)
iPod touch/Phoenix Mobile
Apple Watch/Apple WATCH OSあるいはWatch OS
iPad mini/Phoenix Tablet
Mac mini/Web Capsule・Local Capsule・TV OS
SONYのワイヤレスノイズキャンセリングイヤフォン
これらの環境をインストールし、WorkGroupに登録してライブラリを同期すれば全てのデバイスで環境をまとめてシームレスに利用できる。Apple WATCH OSを使う場合はiPod touchのPhoenix Mobileにシステム拡張をインストールすれば良い。
※今のAppleはAXISの月神に潰されていることと既に社内でイノベーションに対する志が失われていることから生産力と品質力が低下しているため、一昔前の中古品の純正品を買ったほうが良い。海賊版は品質が悪く壊れやすいので結局のところ金がかかるので推奨できない。
【バンドル:フォルダでまとめられたひとまとまりのバイナリ群】
VisualizerとCCDの開発環境
VisualizerはPhoenix CCDデフォルトの開発環境であり、メインの画面となるLinkTableではシステム全体をマップで表示し、その中にクラスと呼ばれる一般の開発環境で言うソースコードに当たるものを配置して、パッチというラインでメソッドを繋ぐ仕組みで構築される。
Link Tableではデータ構造体でメディアを定義し、メソッド変換器でそれらのデータ��造体をデータを変換しながら同期するという方法でプログラムを開発する。GUIの設計はデータ構造体にスポットライトを当てると自動でGUIを生成してくれる。hibrelation-fとはメソッド変換器がデータを双方向に処理する手法を顕したものである。Chart Composerでオブジェクトの状態を設計し、ComposerでGUIで手順を記述する。
プロジェクトはバックグラウンドコンパイルされ、編集中のクラスはインタプリタで実行される。パッケージをコミットするとPlaygroundにパッケージが配置され、Instance Viewでリソース状態を徹底的に詳細表示してDebuggerで操作しながらPlaygroundでテスト実行することが可能である。あとはKsvnでグラフィカルにバージョン管理してgitでオンラインのリポジトリにコミットすれば良い。
一度Visualizerで書いたプログラムはパッケージング化すればPhoenix CCDが動作するすべての環境で同様に動作する(ただしOS特有のAPIを利用するプログラムの場合は実行不可)
EnterpriseとQt Portal
Phoenix CCDはWindowsやApple OS X、Ubuntu Linux上で動作するようにプラットフォーム移植されたEnterpriseが提供されている。それぞれの環境中で動作するQt Portalというインストーラーをサイトからダウンロードしてインストールすることに依って、後の全てのインストール作業はネットワークインストールで行える。Qtとはネイティブなシステムに乗り上げるという意味である。
Universal Install Flashはサポートする様々なアーキテクチャのマシンで同様に動作するインストールメディアである。またCubiを使うことによりホストOSから動的にパーティションを切り、そこにMach【ネイティブなPhoenix CCDの構成】をインストールした後にデータをホストOSからインポートして移行することも可能である。
Phoenix CCDの初期設定
Phoenix CCDは初回起動時に初期設定を行う必要がある。Machなら無線LANのドライバインストールや無線LANの設定、ホストOSからのインポート設定、COMのOpen IDアカウントの取得及び登録、SongbirdやLast.fm、Pixiv MachineのGeniusおよびPingの設定、管理者や通常のアカウントの設定、匿名の診断情報の送信可否などを設定する必要がある。
Phoenix CCDの初回起動時にはデスクトップにログインした後にクイックガイドが表示されるので目を通しておくと簡便な操作方法は習得できるだろう。
AIや操作上のナビゲーション
Phoenix CCDのunder BuildにはSiriが含まれているため、コンピュータに話しかけるだけでもいくらかの操作は自動で実行可能である。
オブジェクト指向で作られたマクロが装備されているため、状況に柔軟に対処しながら、ユーザの操作待ちのアクションも組み込んでマクロの自動化処理を実行できる。
ナビゲーションピンは別のユーザーから送られた、あるいはヘルプやSiriが提供するウィジェット特定のナビゲーションであり、特定のウィジェットを展開した上でピンを差し、ツールチップで説明を表示してナビゲションを行うものである。
日本語環境と収録フォント
日本語入力メソッドは「うたのは」であり、ナチュラルインプットを特徴としている。under BuildにはATOKの方言入力モジュールがデフォルトのインプットメソッドの「うたのは」に組み込まれているため、幾つかの方言の入力が可能である。
日本語環境のデフォルトのシステムフォントはTakaoフォントであるが、視認性を考慮したTakao ClearTypeや横幅を狭めたTakao Condensed、ビジネス用途のTakao Businessも収録している。オープンソースのフォントであるWeb明文用の源ノ角ゴシックや(違法だが)商用のフォントであるヒラギノや小塚明朝も収録している。まるもじとしてあくあフォントなども収録している。
Font ManagerやWallpaper Manager
フォントや壁紙などを管理するFont ManagerやWallpaper ManagerはWebブラウザでファイルをダウンロードしてきて読み込むのではなく、Managerのインターフェイスからインターネット上のリポジトリを参照してシームレスにダウンロード及びインストールが行えるようになっている。
QTCenter
アーキテクチャとしてQTCenterというアーキテクチャがあり、これにコーデックをインストールすることに依ってシステム全体のプレイバックでこれらのコーデックを参照することが可能である。コーデックは状況対応パッケージマネージャでも追加インストールすることが可能である。
Mission Control
マルチデスクトップ機能はApple OS Xとほぼ同様のものであるMisson Controlを装備する。このMission Controlはデスクトップを可能な数までは自由に追加、除去可能である。
ただし流動的にデスクトップを表示するCCDの特性から壁紙は全体で一つ固定である。Apple OS Xと同様にDashBoardを一つのデスクトップとして表示することも可能だが、DashBoardを通常のデスクトップに上からかぶせることも同時に可能である。
Phoenix CCDのMisson Controlはアクティビティの機能があるため、デスクトップの構成をテンプレートから配置することが可能である。複数のデスクトップ環境を複数のデスクトップに起動・配置することも可能である。
ストリーミングとブックマークとダウンロードの形態
コンテンツのダウンロード形態はいくつか種類がある、「ストリーミング」はダウンロードせずに直接ストリーミングでオンラインで再生する方法。ブックマークはコンテンツの項目を記憶するものである。「ScrapBook」は一時的にメモ目的でライブラリとは別のリストにダウンロードしておくもので、一定時間経つと消去される。「レンタル」はライブラリにインポートするが一定時間すると消去される。通常は「ダウンロード」してライブラリにインポートする。
Notification
Phoenix CCDはNotificationによる通知機能を装備する。これは一般的なOSでダイアログで通知を表示するところを、デスクトップ右上の隅でベゼルで表示する手法である。Notificationはユーザーの用事や操作を中断させないため、スムーズな通知表示には有効なインターフェイス手法である。このベゼルには最低限のウィジェットを埋め込みユーザーからコマンドを実行するためのインターフェイスにすることも出来る。Notification Centerではサイドパネルで過去に通知したNotificationの履歴を表示することが出来る。
タスクとベゼル
Phoenix CCDの場合ユーザーの用事はタスクとして管理される。これは一般のOSにおけるアプリケーションに相当するが、用事の単位なので厳密には違う。WindowsやLinuxではウィンドウ内にメニューバーが出るが、ウィンドウというのは必ずしも用事に対応して表示されるものではないため、デスクトップ全体で表示されるタスクにメニューを割り当てるというグローバルメニューバーのほうが正しい。
ベゼルはタスクごとに画面中央に表示される半透明なインターフェイスである。ベゼルはアンドゥやペーストなどキーボードショートカットなどのタスク全体に対するアクティビティをわかりやすく表示するのに有用なインターフェイスである。
常駐アイコンとDock
常駐アイコンはグローバルメニューバーに表示される。これは常時表示する小さなアプレットを表示するときには適したインターフェイスである。常駐アイコンからはプルダウンメニューが通常のインターフェイスだが、複雑なインターフェイスを取りたい時にはパネルインターフェイスを装備しているアプレットもある。
Dockはタスクやショートカット、コンテンツ項目、アプリケーションのランチャ、アプレット、ストレージ、ゴミ箱を表示するためのインターフェイスである。アイコンベースであるため視覚的に直感的で、常に前面に表示されるため、最も簡便にアクセスできる。Dockからもメニューやパネルインターフェイスをポップアップさせることが出来る。
ウィンドウのグラブ操作、デスクトップへのスナップ、Minimarize
ウィンドウは縁がエメラルドに発光してているものがアクティブなウィンドウであり、ドロップシャドウの広さと濃さに依ってウィンドウの上下関係がユーザーには掴める。ウィンドウはMacではコマンドキー、WindowsではControlキーを押しながらマウスをウィンドウ内をグラブしてドラッグすることでウィンドウを移動することが出来る。これはタイトルバーをグラブしなくても、あるいはウィンドウ全体でグラブ出来る。コマンドキー/Controlキー+ダブルクリックをするとデスクトップにウィンドウがサムネイルになってスナップする。このサムネイルは(例えば動画など)リアルタイムで内容が更新される。Minimarizeは画面の縁にウィンドウをサムネイル化して避ける機能である。
ライブラリのLossy
システムをインストールしているストレージの容量が満杯になった場合はライブラリの古い項目や古いキャッシュから優先して削除されるため、システムは壊れない。容量の大きなマシンから同期しないと容量の大きなマシンのストレージの容量を活かせないため、通常は容量の大きなストレージを持ったLocal Capsuleなどのマシンを支点にして同期するのが最善である。このLossyの機能は古い項目だけでなく重要度の低い項目やアクセス回数の少ない項目からも削除されるようになっている。追加日の新しい項目、編集日の新しい項目、ユーザーが重要のフラグを付けた項目、ユーザーがよく使うアクセス回数の多い項目は削除されにくい。
メディアファンクションキーとアプリケーションファンクションキー
Macでは特に使われているが、メディアファンクションキーはPhoenix CCDでも一般的な機能である。それぞれのキーに割り振られたデスクトップやあるいはメディアの操作のグローバルショートカットの役割をファンクションキーが担う。Fnキーを押せばこれらはアプリケーションファンクションキーに切り替わるため、使っているアプリケーションの機能を一発で実行することが出来る。メディアファンクションキーおよびアプリケーションファンクションキーはカスタマイズすることが可能である。
DVD・Blu-rayプレーヤー
Phoenix CCDはunder BuildにおいてはDVDおよびBlu-rayプレーヤーをデフォルトで備える。このDVD およびBlu-rayプレーヤーは通常の動画再生ソフトとは違い専用のインターフェイスを備える。
通常LinuxなどのオープンソースのOSでは、動画は動画ファイルとして保持するほうが好まれる傾向が強い。Phoenix CCDでは動画ファイルは同様に多用されるのは変わらないが、DVDやBlu-rayなどの動画の光学メディアも利用可能である。これは現状ではユーザーにとっては光学メディアの資源を所持していることがあることを考慮し、その有用性を評価して装備している機能である。
また光学メディアはストレージごと買える方法なので、特に大容量のBlu-rayに相当するメディアは動画ファイルではなく光学メディアで買ったほうがハードディスクの容量を占有しないので良いかもしれない。
DVDやBlu-rayを再生するための復号化モジュールであるlibdvdcss、librelcprm、libAACSとキーデータベースは違法に入手するのならunder BuildのPhoenix CCDで再生は可能である。
ディスクキャッシュイメージの機能を使うとシステムのストレージ上にディスクをディスクイメージとしてコピーすることによって、物理的にディスクをドライブに挿入しなくてもマウントして利用することが可能である。
WineとmilK、Win APIとCocoaライブラリ
Phoenix CCDではWindowsやApple OS Xのアプリケーションをインストールして動作させることがライブラリのインストールに依っては可能である。これはWindowsやApple OS XのAPIをライブラリとして提供し、これにアプリケーションの参照を通すことに依って動作を実現するものである。
合法的なライブラリを利用したければWineおよびmilKライブラリをインストールすればいくらかは動くし(エラーの状況はコンソールに表示される)、クラック版のWin APIとCocoaライブラリをインストールすれば対応するOSのバージョンに関わらずほぼ完全に動くだろう。
これらのアプリケーションはtype-bのアプリケーションに割り振られてランチャから起動したり、読み込めるファイル形式をシステムが検出してライブラリ管理ソフトから透過的にtype-dの編集ソフトとして扱って編集したり出来る。
Flash Update
Phoenix CCDではアップデート方法はFlash Updateである。Flash Updateは信頼できるリソースからのパッケージを自動でダウンロードし、バックグラウンドでウイルススキャンして、システムの別の領域に自動でインストールし、起動し終わるまで待機させ、設定ファイルを変換しておいた上で、プロセスをすり替えて一瞬でソフトウェアをアップデートする方法である。これは使いながらでも出来るため、非常にスムーズにシームレスにアップデートを行うことが出来る。ただ通常はFlash UpdateもNapAid中に実行する操作である。
【NapAid:スリープしている時に自動で実行されるメンテナンス作業】
バインダー
Phoenix CCDでは大抵のメディアはメディアの形式のジャンルごとに分けてライブラリ管理ソフトに保持されるが、用事に沿ったコンテンツ項目を一つにまとめて扱いたい場合にバインダーという機能が利用できる。バインダーはその名の通り複数のメディア形式で構成されるメディアを一つにまとめて管理できる機能で、OLEで繋がっているメディア項目を一つにプロジェクトのようにまとめて分類できる機能である。ライブラリのデータが実態であり、バインダーに登録されるのはそれらのコンテンツの項目への参照を持ったエイリアスである。
バインダーにはラックという機能もあって、コンテンツ項目の相関関係をリンクとして指定するだけで、おおまかな操作手順をサイドバーに提示してくれる。ちなみにこれはバインダーとは関係ないが、ダミーのオブジェクトを編集中のコンテンツに配置する機能もあり、これも作業工程をユーザーが把握するのに役立つ。
OLEとリンク、インポート
Phoenix CCDではOLEを重要なマルチメディアなコンテンツの制作のデータ管理手法として使っている。OLEはあるアプリケーションのそのコンテンツに埋め込まれた別のコンテンツをライブラリの別のコンテンツ項目としてリンク関係を保持して埋め込み、そのコンテンツ項目はその別のアプリケーションで編集するという方法である。この場合埋め込まれたコンテンツはバッファとして埋め込み先のコンテンツにデータが保持され、これはリンク元のオリジナルが更新されると自動で更新されるようになっている。
メディアをインポートするときはメディアブラウザをサイドバーで使うか、(リンク情報を記憶した)ペーストボードからコンテンツ項目をドラッグ・アンド・ドロップで配置するか、ライブラリ管理ソフトからドロップするかである。
Wi-Fi Transfer
Wi-Fi Transferはライブラリ内のコンテンツを別のマシンに無線で転送できる機能である。Apple OS XのAirDropのような機能であるが、いくらかの違いがあり、リンクで繋がっているコンテンツ項目はひとまとまりのものとして全て転送される。この時読み込めない形式のデータが有った場合は、動的に状況対応パッケージマネージャでサムネイル生成機能やプレビュー生成機能をインストールすることが出来る。またWi-Fi TransferはLANのネットワーク環境を必要とせず無線デバイス同士でデータを直接転送できるため、出会い頭のマシンでも転送できる(セキュリティーのための認証に注意が必要)。有線で繋がっているときは有線での転送が優先される。
シート、グローバルメニューバーのせり出し
シートはApple OS Xのインターフェイスを模倣したもので、ドキュメントウィンドウやアプリケーションウィンドウのタイトルバー以下にダイアログのシートを表示するインターフェイス形態である。この手法を使うとドキュメントウィンドウやアプリケーションウィンドウのタイトルを親として、またタイトルバーをダイアログが指定する必要がなく、親ウィンドウが移動した時に連動して動くインターフェイス形態にすることが出来る。
グローバルメニューバーはアプリケーションウィンドウの最大化表示時にはアプリケーションの種類によって常時表示したりせり出し表示したりする。実務的なアプリケーションではグローバルメニューバーは常時表示だし、ビジュアル的なアプリケーションや全画面表示ではせり出し表示である。グローバルメニューバーがせり出し表示する場合には、ツールバーも連動してせり出すようになっている。
ウィ���ェットのインターフェイスからの追加インストール
Phoenix CCDではインターフェイス上のウィジェットをOptionキーを押しながら右クリックすることに依ってウィジェットに合致した拡張的な追加パッケージをインストールすることが可能である。この方法に依ってインストールできるのは、安全性を考慮して特に確実に安全性が認証されたパッケージである。この方法でパッケージをインストールすると、インストールが完了した後は追加のウィジェットがインターフェイス上に表示されるだろう。
OutlineEditとLibreWriter
文章を書くときに使うソフトがOutlineEditである。このソフトはアウトラインから文章を書き起こして、書式の付いた整形された文章を記述するのに向いているソフトであるが、これ自体はレイアウト情報を持たない。OutlineEditでは画像もテキストにアンカーして埋め込める。(ただし画像はOLEのリンクとして保持される。)OutlineEditではレベル別の見出し、本文、リスト、画像、脚注、ソースコード表示、(LibreCalcからのインポートしての埋め込みだが)表などの書式が扱える。これらの書式やテキストに適用される書式(例えば「強調」など)もスタイルとして一元的に管理される。ブロックの入れ替えや見出しのレベルの変更などは動的に可能である。
OutlineEditで書いた文章は、LibreWriterにインポートしてワープロとしてページレイアウトしたり、Wikiにアップロードして(同様にOutlineEdit文書としてWikiをダウンロードすることも出来る)資料を編集したり、ScribusにインポートしてよりプロフェッショナルなDTPを行ったり、メールに紐付けてメールの本文を書くのに使ったりも出来る。つまり文章を書く用事に対して汎用的に利用されるのがこのモジュールである。
ちなみにLibreWriterでは章見出しのヘッダやページ番号などはチェックボックスで設定するだけで自動で作成してくれるのでフィールドを挿入するような方法は必要ない。トップページや奥付や目次をメタデータやOutlineEditの文章のスタイルから自動で作成してくれる機能も装備されている。
LibreWriterにはOutlineEditで付けたスタイルの情報に則ってテーマを選択するだけで装飾の書式を付けてくれる機能もある。このテーマはテーママネージャでテーマを切り替えるだけで一元的に文書全体をリデザインできる機能である。テーマはユーザーがカスタマイズすることも可能であり、ネットワーク上のリポジトリを参照してダウンロードしたり共有したりすることも可能である。LibreCalcで作成した表をLibreWriterに埋め込んだ場合はLibreCalcでつけたセルのスタイルに則ってLibreWriterの表のテーマが適用されて装飾されることになる。
COMのキャッシュのウイルススキャンのclamd
Webブラウザに当たるCOMブラウザは全てのダウンロードコンテンツのキャッシュを表示前に全てウイルススキャンしてからページを構成し表示する。これは常駐しているウイルス対策ソフトであるclamdによって装備されている。もしclamdがウイルスを発見した場合、そのページあるいは同じサーバーのページのCOMページは全て表示がブロックされることになる。
Store Managerによるコンテンツの管理
Phoenix CCDではコンテンツの管理状態をStore Managerで管理できる。Store Managerはコンテンツの管理状態を定義したり派生したりマージしたりする機能があり、ユーザーは管理状態をテキストなどで記録したりすることが出来る。Store Managerを利用することで、ユーザーはコンテンツの管理状態を破壊せずデスクトップ環境側にそれらの状態を記憶させておくことが出来る。つまりユーザーが管理状態を忘れたとしても管理状態は破壊されない。Store Managerの機能はSiriなどのAIやマクロからも利用でき、自動化処理を実行することが可能である。
COMのコンテンツやパッケージの認証
COMではコンテンツやパッケージは利用者側のユーザーが認証したものしかアクセス及びダウンロード出来ない。これはウイルスを含��だコンテンツやパッケージ等悪意あるリソースにユーザーがアクセス出来ないようにするための仕組みである。COMでコンテンツを利用したりパッケージをインストールするためには、先にそれらのコンテンツやパッケージを提供しているユーザーを認証する必要がある。認証することに依ってそれらのリソースにアクセスできるようになる。ユーザーは提供者が信頼できるユーザーであるかを様々な情報やアカウントのメタデータから総合的に判断して認証しなければいけない。インストール後の初期状態でもPhoenixのコミュニティーが認証したユーザーがデフォルトで登録されているが、ユーザーはこれに自身で信頼できる提供者の登録を追加していくことで、利用できるリソースを拡大していくことになる。
Last.fmラジオとpixiv MachineなどのGeniusとPing
(Phoenixの)Last.fmラジオはSoundCloudに投稿された音源のデータの統計とローカルのSongbirdのライブラリの解析の情報から、ユーザーがライブラリに持っているトラックとSoundCloudに投稿されている楽曲をパーティーシャッフルしてSongbird上で再生する機能である。pixiv Machineのスライドショー機能は同様に絵のライブラリとオンラインのpixivのSNSの絵を混ぜてスライドショーする機能である。これはGeniusとPingの手法を使い、ローカルのライブラリを解析すると同時にSNS上のデータを統計してこれらを混ぜてユーザーにコンテンツをサジェストするものである。
誰でも必要な重要な実装の名曲のコンテンツはどのユーザーでも同様に表示され(これをRavensと呼ぶ)、それ以外はユーザーの嗜好に合ったコンテンツ、例えばユーザーの好きなアーティスト等のコンテンツを表示する(これをOxygenと呼ぶ)。ユーザーの気分に合わせてフィルタを掛けてサジェストの傾向を選ぶことも可能である。ムードを選択したり新曲を優先したりヘビロテで聴いたり決め曲を優先したりすることも可能である。
Personal LifeCycleとPersonal Launchpad
Personal LifeCycleは日常の生活の管理を行うためのプラットフォームである。リマインダやカレンダーやメモや日記などの機能を持っている。Personal Launchpadは日常の生活の中でZまわりの開発を行うためのプラットフォームである。Bugzillaやエンジニアリング用のノート、バイナリチャートの描画、マイルストーン、FreeMindシステムツリーチャートなどを装備している。ユーザーはこの二つのプラットフォームを利用することで生活を管理したり生活上で必要な開発を行うことが出来る。これらの資料は紙に簡便に印刷することも出来る。
ペーストボードやメディアブラウザやガジェットやNotificationなどのサイドバー
サイドバーはPhoenix CCDが装備しているデスクトップ・インターフェイスの一形態であり、デスクトップの右端のスペースを使って様々な要素を表示するものである。たとえば色々なアプリケーションからコピーされたデータを格納し履歴として提示するペーストボードのサイドバーであったり、インポートしたいメディアのライブラリを表示するメディアブラウザ、DashBoardウィジェットを常時表示するガジェットサイドバー、Notificationの履歴を表示するNotification Centerなどである。
HUDヘルプやクイックヘルプなどのヘルプとチュートリアル
HUDヘルプを常時表示させておくことで、カーソルが指し示しているウィジェットの即時的なヘルプを半透明のウィンドウに表示させて���くことが可能である。クイックヘルプは一時的なヘルプを表示する方法であり常時前面に表示されるフロートウィンドウである。バルーンはウィジェットの説明のヘルプのうち特に特徴的な要素を初回時に表示するヘルプ形式である。より詳細なチュートリアルが欲しければCOMサイトのWikiなどで構成されたヘルプページを参照するといいだろう。
XCloudとObjective-J
XCloudはPhoenix CCDデスクトップ環境をWeb標準が扱えるWebブラウザ���で動作させる手法およびそのプラットフォームである。Webブラウザが装備しているJavaScriptエンジンで仮想マシンを動作させ、インターフェイスシステムをブラウザ上で動作させる(この手法のことをObjective-Jと呼ぶ)。そのためWebブラウザでアドレスにアクセスするだけでPhoenix CCDデスクトップ環境およびそのCOMを体験、利用することが出来る。
アカウントを作成すれば設定ファイルを保持したりiCloudストレージを継続的に保持するなど自分用のシステムを保持することも可能である。アカウントを作成しない場合はGuestアカウントでログインすることになり、個人データは継続的には保持できないが、ログイン中は状態を保持したまま利用することが可能である。GuestアカウントはアクセスしているユーザーのIPアドレスでユーザーが認証されるため、特定のアカウントとしてXCloudを利用できる。ユーザーの認証にはブラウザのCookieも利用して認証を行っているのでCookieの設定は有効にする必要がある。
コンテンツをiCloudからダウンロードしたりあるいはiCloudにアップロードしたいならBridgeのダイアログを表示すればローカルからファイルをダウンロードあるいはアップロードすることが可能である。Gears拡張機能をWebブラウザにインストールすればローカルとの連携も可能であり、例えばローカルにストレージ領域を確保できる。
全画面化の機能もあり、ユーザーはほとんど環境をそのまま利用しているようなエクスペリエンスを得られる。ただしホストOSの画面機能は有効なので、ホットコーナーなどの機能はホストOSの設定次第では利用できないかもしれないことは留意して欲しい。
これらはあくまでもオンラインのクラウドサービスなので、プライバシー性はないことに注意したい。XCloudは互換性やオンラインサービスとして、また導入が容易であることから提供されているものである。Phoenix CCDデスクトップ環境をローカルで利用するためにはEnterpriseを導入する必要がある。WebブラウザのActiveXインターフェイスを利用することによりWebブラウザからEnterpriseなどをインストールするためのQt Portalを透過的にインストールすることも可能である。(ただしQt Portalのインストーラーをダウンロードして起動してもいいのであまり重要な機能ではない。)XCloudからEnterpriseに環境や設定をインポートして引き継ぐことも出来る。
0 notes