見出し画像

「ファイルシステム」よ、さようなら

こんにちは。ritarと申します。
今は東京大学の3年生で、designing plus nineというサークルで日々楽しく活動しております。

最近、こんなツイートを見ました。

noteやGoogleドキュメントに慣れたあとだと、Wordの「ファイル」を送るというのはとても面倒に感じていたので、共感するとともにぼくだけじゃないんだと安心した気分になりました。

このツイートを読んで、コンピュータのファイルやフォルダについて最近考えていたことが整理されたので、ここに記しておこうと思います。

フォルダが消えていく

最近、いろんなアプリから「フォルダ」という概念がなくなる、もしくはどんどん控えめになっています。

一番象徴的なのはGoogleドライブでしょう。

画像1

左:以前 右:最近

Googleドライブは普通のパソコンを模倣したフォルダ構造になっているサービスの代表です。以前はアプリを開くと即フォルダが見えましたが、今は1ページ目では最近使ったファイル一覧が表示され、フォルダは一番下の小さいボタンを押さないと見えないようになっています。

他にも、例えばOfficeやAdobeの「ようこそ画面」も、PC内のフォルダ構造を隠している例です。Wordを使うとき、「エクスプローラやFinderから目的のWordファイルを探して開く」ではなく、「Wordを開いて出てきたドキュメント一覧から開く」という方法を使っている人、結構多いのではないでしょうか。

画像2

Wordのようこそ画面

画像3

Illustratorのようこそ画面

最近流行りのデザインツールFigmaもですね。デザインのファイルという、今までならフォルダ内にまとめられて整理されていたものを、あくまでフラットに表示しています。

画像4

Figmaを最初に開いたときの画面

このような「フォルダを意識させない」UIがどんどん増えているのには、なにか理由があるのでしょうか。この記事ではそれを探ります。

ファイルとフォルダの歴史

まず、ファイルとフォルダができた経緯からおさらいしておきましょう。

太古の昔にはCLI(Command Line Interface)といって、ターミナルという真っ黒な画面でコンピュータに指示を出して操作していました。例えばimage-viewerという画像を見るアプリがあったとすると、「image-viewer cat.png」と入力すれば画像が見られる、という感じです。

画像5

このように、「使いたいアプリ名」→「対象のファイル」という形式で記述していました。
使うアプリとファイルの間には、多対多の関係があります。例えばimage-viewerではpngだけでなく、jpgやbmpなどの画像を見ることができるでしょう。逆に、pngファイルはimage-viewerだけでなく、例えばimage-printerという画像を印刷するアプリなどと組み合わせる可能性もあります。

画像6

PC内にいろんな種類のファイルがあり、いろんなアプリを使ってそのファイルを編集・操作する。それぞれのアプリは、はさみやペンのように、目的のファイルをいじるためのツールと捉えることができます。

しばらくのち、我々の見知ったGUI(Graphical User Interface)というものが登場し、文字ではなくアイコンやボタンを使って操作できるようになりました。GUIでは「対象のファイル」→「使いたいアプリ名」という順番になってはいますが、基本は同じです。「PC内にいろんな種類のファイルがあり、いろんなアプリを使ってそのファイルを編集・操作する」という構造は変わっていません。この構造を覚えておいてください。

画像7

いろんなファイルを、いろんなアプリで開くことができる

PC内にたくさんあるファイルをわかりやすくまとめるには、フォルダを使います。これもCLI/GUIともに変わりません。ここまではパソコンを普段使っている方なら当たり前に理解してくださると思います。

プロプライエタリ・ソフトウェアの台頭

コンピュータが普及しだしてしばらくした頃、OfficeやPhotoshopといった製品が登場します。これらのソフトはpngやpdfなどの誰でも使えるフォーマットではなく、Wordなら「◯◯.docx」というWordでしか開けない形式で文書を保存します。それを開くためのWordというソフトを販売することで利益を得るというビジネスです。

売らないといけないのでもちろんWordのソースコードは非公開です。このようなソフトウェアを「プロプライエタリ・ソフトウェア」と呼びます。

このようなソフトウェアが普及したことによって、上記の「PC内にいろんな種類のファイルがあり、いろんなアプリを使ってそのファイルを編集・操作する」という構造に変化が生じました。
例えばWordファイルならWordでしか開けないし、逆にWordで開くのはWordファイルだけです。アプリとファイルの多対多の関係が崩れ、一対一になっています

画像8

Wordファイルは基本的にWordでしか開けない

WordファイルをWordで編集し、そのままWordファイルとして保存する。この流れの中に、Word以外のアプリ、またWordファイル以外のファイルは一切登場しません。この状態をぼくは「Wordの環境」と呼んでいます。ユーザーはPCから自由なファイルを選び自由なアプリで開くのではなく、閉じたWordの環境の中で作業しているのです。

例えば前述のimage-viewerというアプリの場合、PC上のあらゆる画像ファイルが開く対象になりますが、Wordの場合開いた時点でそのユーザーが見たいのは明らかにWordファイルしかありません。「Wordの環境」の外にあるファイルは、Wordを開いたらまったく興味がなくなります。
このような事情で、独自形式で保存するプロプライエタリ・ソフトウェアでは、いわゆる「ようこそ画面」が有効になってきます。すなわち、PC内のあらゆる種類のフォルダとファイルの中から目的のWordファイルを選んでもらうより、Wordファイルだけを抜き出して一覧にした画面から選んでもらったほうが便利ということです。

画像9

Wordファイルしか表示されない、Wordのようこそ画面

とはいえ、WordファイルもPC内にほかのファイルと一緒に保存されているのは事実なので、Wordの環境になるのはあくまでWordを開いたときだけで、閉じているときには他の種類のファイルと同じように扱えます。

Webが起こしたアプリの環境化

時は流れ、現代。

一人一台スマートフォンの時代。「ユビキタスコンピューティング」なんて言葉をいちいち言うのも古臭く感じるほど、スマホ/PC/タブレットと誰もが複数のデバイスを使い分けている時代です。

そんな時代なので、もはや「PCの中にファイルがある」という状態すらダルいのです。PCだけでなくスマホやタブレットからも同じファイルを見たい。文章はもちろん写真や動画、些細なメモに至るまで、すべてのファイルをすべての端末で見られたらいいのに、という欲求が出てきます。

そんな思いに応えて生まれたのが、Googleドキュメントなどのインターネット上に保存できるサービスです。ファイルをインターネットに置いておけば、どんな端末からでも見られて便利ですよね。ついでに自分以外の人にも簡単に見せることができます。

ここで改めて最初のツイートを見てみましょう。

おそらくこのツイートをなさった方も承知の上だとは思いますが、ここまでの議論を踏まえると、Googleドキュメントの本質はファイルが存在しないことではなく、ファイルが「ローカルに」ないことです。ファイルがインターネット上にあることで、どの端末からも見られて簡単に共有できるようになっています。

Googleドライブなどから始まったこの流れはどんどん加速し、FigmaやEvernote、Googleフォトなど、今までローカルのファイルとして管理していたものが次々とWeb上に移動しています(※本当の源流はGmailとかだと思います)。

ところで、これはあまり一般的な見方ではありませんが、GoogleドキュメントなどのWebサービスは究極のプロプライエタリ・ソフトウェアと考えることができます。
WordはソースコードこそMicrosoftのものではあるものの、Wordというアプリ自体は自分のPCに入っていたし、もちろんファイルも自分の持ち物でした。
しかしGoogleドキュメントは違います。Googleドキュメントのファイルは原理的にGoogleドキュメントでしか開けないし、ファイルもアプリもローカルにはなく、保持しているのはGoogleです。なんなら、Googleドキュメントのファイルは、ダウンロードした瞬間にGoogleドキュメントではなくなってしまうのです。ソースコードだけでなくユーザーのデータまで把握できてしまうのが、現代のプロプライエタリです。

さて、勘のいい方ならもうお気づきでしょうが、Wordなどのプロプライエタリ・ソフトウェアが生み出した「環境」は、もっとすごいプロプライエタリ・ソフトウェアであるGoogleドキュメントではもっと本格的なものになります。Googleドキュメントを開いた時点で、Googleドキュメント以外のファイルは本当に一切関係なくなります。GoogleドキュメントのファイルはGoogleドキュメントでしか開けません。本当に閉じた環境になっています。

(逆に、Googleドキュメントが閉じた環境として成立しているからこそ、PCでもスマホでも端末に関係なくデータを閲覧したり編集したりできているといえます。)

PCにまだすべてのデータがあった時代には、各ファイルはいろんなアプリで開くことができました。そんなファイルたちをできる限り見やすくまとめておくためにフォルダがありました。
しかし、データが種類ごとに異なるサービスで作られ、異なるサーバーに保管されるようになった現代、もはやそれらを一緒くたに扱うことはできないし、扱う必要もありません。Googleドキュメントを見たければGoogleドキュメントを開けば、Googleドキュメントのファイルがまとめて表示されます。各サービスは、そのサービスで扱うデータがもっとも見やすくなるように、データを整理して表示してくれます。

画像10

画像11

GoogleフォトとGoogleドキュメントでは扱うデータが違うので、当然表示もそれぞれの形式に最適化されている

エクスプローラで写真を見やすいように「アイコン表示(大)」にして、今度は長いファイル名をつけたWordファイルを探すために「リスト表示」に切り替えて…なんて過去にはもうおさらばです。Googleフォトには写真しかないので写真が見やすいUIで、Googleドキュメントには文書しかないので文書が見つけやすいUIになっています。

こう考えると、いろんな種類のファイルをまとめるフォルダという概念がいかに現代に適していないかはっきりしてきます。
フォルダは「PC内にいろんな種類のファイルがあり、いろんなアプリを使ってそのファイルを編集・操作する」時代のものです。今、この文は一つも正しくありません。今は「各サービスに種類ごとにファイルが保存されていて、対応するWebサービスを使うことでどの端末からでも編集・操作できる」時代です。

各サービスは環境として独立しており、もはやアプリを使ってファイルを編集するというより「その環境に行く」という表現が適切です。Googleドキュメントは「アクセス」しますよね。

スマートフォンが決定的にした、「ファイルシステム」の瓦解

この流れは、iOSやAndroidなどのスマートフォンの台頭によっていっそう加速されたと思っています。

個人が複数台端末を持つようになって、あらゆるデータをデバイス間で共有するようになったから、というのももちろんありますが、そもそもこれらのスマートフォンは、その設計からすでにアプリを「環境」として扱っていたように思います。

まず、iOS/AndroidではPCと違ってホーム画面にアプリしか置けません。PCではファイルやフォルダをアプリと同じようにデスクトップに配置することができましたが、スマートフォンでは何をするにもまずアプリを選ばされます。

画像12

iOSのホーム画面にはアプリしかない(ウィジェットも「少し大きいアプリアイコン」という扱い)

そして、すべてのアプリが全画面表示です。これはもちろん、小さい画面で複数のウィンドウを開くと操作がとてもしづらいという理由によるものですが、これによってアプリをまたいだデータの編集がPCに比べ一層困難になりました。つまり、各アプリが環境として閉じている必要があるということです。アプリを開くという行為は、その環境に没入するという意味になります。

これらからわかるのは、スマートフォンのアプリは、閉じた環境であるという点において、PCのアプリというよりむしろWebサイトに近い、ということです。

画像14

実際、現代のスマホアプリの大半は「そのサービス専用のWebブラウザ」と化しています。
今お手持ちのスマホのホーム画面を見てみてください。「これ、ぶっちゃけWebサイトでもいいよな」というアプリだらけだと思います。そうでないのはたぶんアラームとか電卓とかカメラなどのベーシックなツールか、ゲームくらいでしょう。逆にそれ以外のアプリはほぼ確実に、Webサーバーとの通信をして、その結果を表示するという仕組みになっているはずです。

例えばTwitterにはモバイルアプリがありますが、アプリをアンインストールしても、Webサイトにアクセスすれば特に困らないはずです。わざわざアプリがあるのは、アプリでしかできない処理をしているからというより、UIがなめらかに動くからというほうが近いです。TwitterアプリはTwitterのサーバーと通信して、その結果を表示するためのWebブラウザでしかありません(「Twitterクライアント」という言葉が最もよく表現していると思います)。

ちなみに、Twitterも究極のプロプライエタリ・ソフトウェアだと思っています。ツイートは、Twitter以外のツールにコピペした瞬間、ツイートではなくなってしまいます。
他にはSpotifyなどもそうです。Spotifyでは曲をダウンロードしておくことができますが、基本的にはSpotifyアプリでしか再生できません。mp3すらプロプライエタリになる時代なのです。

Twitterのアプリが実質ただのWebブラウザであるからこそ、我々はスマホでもPCのブラウザでも同じようにツイートを投稿できるわけです。スマホのアプリもPCのWebサイトも、遠く離れたTwitterという閉じた環境にアクセスしていることには変わりありません。

結論としては、今のスマホアプリは「完全に同期されている、ファイルの種類ごとに分かれたフォルダ」であり、「どこか遠くにある環境にアクセスするためのウィンドウ」であるといえます。

もちろん、もともとはこれに対する概念としてPCのアプリがありました。OfficeやIllustratorなどの主にPCで使うアプリは、「ローカルに保存されているデータを編集する」という構造になっています。Webの発展によりこれらのアプリがどんどんインターネットの向こうに移動し、パソコンでもブラウザがあれば結構いろんなことができるようになったのが現在です。そしてこの流れは、我々が「スマホはいらない、コンピュータは一人一台」の時代に戻らない限り、止まらないと思っています。

これが行き着く先

ここまで、ファイルとそれをまとめるフォルダ、という構造がなくなり、Web上の「環境」に変化しつつあることを見てきました。

ここからは個人的な意見ですが、Webがもっと発展してくれば、この先モバイルアプリというものは本当にいらなくなるのではないかと思っています。
最近MOCHAというアプリの開発のお手伝いをしているのですが、スマホのセンサーへのアクセスを除けば、やっていることは本当にWebからもらってきたデータをなめらかなUIに整形して表示するというだけなので、WebのUIを十分なめらかにすることができて各種センサーにもアクセスできるようになれば、アプリはなくてもよくなります。

─────

なお、ここまでずっと環境の話をしてきましたが、例えばExcelのグラフをWordに貼るときのように、環境をはみ出して参照しないといけないことも結構あります。
それをWebの世界で可能にするものこそが、URLです。

画像13

このnoteにももう何度かTwitterのURLを貼りましたが、URLというのは、環境とその環境内のファイルの情報が一つの文字列にまとめられている、本当に素晴らしい仕組みだと思います。
GoogleドキュメントのURLには、「Googleドキュメント」という環境、そしてその中にあるファイルの情報が含まれているので、(アクセス権の問題がなければ)誰でも絶対に開くことができます。ファイルを受け取ってもWordアプリを持っていないと中身を見ることすらできないWordとは大違いです。

Wordに貼り付けられたExcelのグラフが表示されなかったり、Illustratorで画像を埋め込み忘れてリンク切れになったりは、Webベースのサービスならもう起こりません。(もちろんMicrosoftもこれはわかっているようで、Fluidという仕組みがもうすぐできそうでとても楽しみです)

─────

ところで調べ物をするとき、「いろんなリンクをぺたぺた貼り付けたGoogleドキュメント」を作ることがよくあるのですが、考えてみるとこれはフォルダの代わりになっているといえます。いろんなデータを文脈とともに記述しておけるので、個人的にはフォルダという仕組みより優れていると思います。

少しだけマニアックな話をすると、人間が情報を整理する際に、フォルダ(すなわち木構造)が適していないのではないかという指摘は昔からあり、ぼくの好きなJason Yuan氏のMercuryやGoogleのFuchsiaなど、アプリ単位ではなくタスク単位で画面をまとめる試みもいくつかあります。Notionに対してのScrapboxのようなイメージです。
これらは面白いので応援しているのですが、その一方ですべてのアプリがWebになれば、これらの試みが指摘している問題は結構解決されるのではないかとも思っています。むしろWebになったほうが、これらのUIを実現しやすくなるともいえそうです。

おわりに

最後にもう一度このツイートを振り返ります。

「ファイルを送る、探す、保存する」は、次のようにしてなくなります。

●ファイルはWeb上に保管され、URLという固有の文字列が割り当てられる。
●誰でもどんな端末からでも、URLにアクセスすれば、共通の環境で常に最新のデータを見たり、一緒に編集したりできる。
●ファイルが保存されている環境ごとに、そのファイルの種類に適した形で整理されて表示される。

Webという共通のプロトコルにのっとり、フォルダがなくなりすべてのファイルがどこからでも参照できる世界。それを実現するのがFuchsiaかChrome OSか、はたまたWebAssemblyWAVMなのかはわかりませんが、着実に正しい方向に進んでいると思います。今後のWeb技術、ひいてはコンピュータの未来が本当に楽しみで仕方ありません。


こんなに長い記事を最後までお読みいただき、ありがとうございました。普段はこんなものを作ったりこんな動画を作ったりしています。今後も引き続きインターフェイスオタクをやっていきたいと思います。
これは機械系 Advent Calendar 2020 15日目の記事です。

読んでいただきありがとうございました。サポートがたまったら執筆時に飲む用のちょっといいお茶を買おうかなと思います!