私はインフラエンジニアですが、インフラエンジニアでもアプリケーションを作ることがあります。通常のアプリケーションがデータを扱うのに対してインフラエンジニアが作るアプリケーションはサーバーの設定などを扱います。その名もTUIアプリケーションです。
TUI(Terminal User Interface)の歴史は、コンピューターと人間の対話の歴史そのものであり、単なる「古い技術」ではなく、 「制約の中で生まれた究極の機能美」 の歴史でもあります。
本日はTUIの歴史をまとめました。
1. 黎明期:テレタイプから「ガラスのテレタイプ」へ(1960s-70s)
最初は画面すらなく、タイプライターでコマンドを打ち込み、紙に結果が印字される時代(テレタイプ)でした。
やがてブラウン管を備えた「ビデオ表示端末(VT100など)」が登場します。これが 「ガラスのテレタイプ」 と呼ばれた時代です。
CLIの限界: 1行ずつ文字が流れていくため、前の情報を確認するには画面をスクロール(あるいは紙を見返す)しかありませんでした。
2. TUIの誕生:cursesの革命(1970s後半)
1980年頃、BSD UNIXの開発者たちが 「curses(カーズ)」 というライブラリを作りました。これがTUIの歴史における最大の転換点です。
画面の「座標」を支配する: それまでは「1行流す」だけだったのが、画面の「3行目の5文字目」に文字を置く、という制御が可能になりました。
生まれた名作: これにより、伝説のゲーム『Rogue』や、テキストエディタ『vi』が誕生しました。画面の一部だけを書き換える「効率的な描画」の始まりです。
3. 全盛期:GUI前夜の主役たち(1980s-90s)
WindowsやMacが普及する前、MS-DOSなどのPC環境ではTUIこそが「リッチなアプリ」の象徴でした。
Turbo Vision: Borland社が開発した、テキストベースなのに「ウィンドウ」「メニューバー」「マウス操作」を実現したフレームワークです。
ファイラー文化: 日本では『FD』、海外では『Norton Commander』など、青い画面に2ペインのファイル一覧が並ぶTUIアプリが、エンジニアの標準装備でした。
4. 冬の時代と「ncurses」の普及(1990s-2010s)
Windows 95の爆発的普及により、世界はGUI一色になりました。TUIは「サーバー管理用の地味な道具」として裏方に回ります。
この時期に、現在のLinux環境で標準となっている**「ncurses (new curses)」**が登場し、オープンソースの世界でTUIの火を絶やさず守り続けました。
5. 現代:TUIルネサンス(2020s〜)
今、エンジニアの間でTUIが再び熱狂的に受け入れられています(TUIルネサンス)。
なぜ今?: 開発環境が複雑化しすぎた反動で、「軽量・高速・キーボード完結」なツールが見直されています。
モダンなTUI: Go言語の Bubble Tea や Rustの ratatui といった強力なライブラリが登場し、lazygit や htop のような、GUIより使いやすいツールが次々と生まれています。