ハードウェアからサーバ・アプリまでワンストップで開発

 

 

前のエントリでは背景と概要について書いたので、もうちょっと掘り下げて

何を目標として作っているか

ということについて書いてみたいと思います。

 

上は開発中の画面です。もちろん編集もできます。

普通の「文書」を書く時、こんな感じで書ければだいたい十分だと思います。これに適当に画像が入れられれば(入れられます)、文書システムとしてはだいたい完成。実際、そんなシステムは結構あります。

これはこれで結構便利ですし、今既に実用に使っています。このmarkdownのレンダリングにはmarkdown-itを使っていますから、どんどんプラグインを入れて行けばどんどんいろんな表現が可能になります。プラグインを選択できるようにするとか、スタイル調整ができるようになれば、文書システムとしては上々でしょう。

また、文書にタグとかカテゴリ設定ができたり、検索機能をつけたりとかすれば、メモシステムとしても便利なものになるでしょう。実際世の中にはそんなものは多数あって、それなりの支持されています。いくつか入れて試してみましたが、どれもとても良く出来ていると感じます。と言うか、そういったことに関してであれば、私は既に自分で作ったこの程度でも十分満足です。

ところがこれには決定的に残念なことがあります。それは

コンテンツが生きて(live)ない

ということです。

どういったことかと言えば、これはmarkdownですから

```
```

で囲めばコードを入れられます。それはそうなのですが、このコードは動きません。そこにテキストとして置かれているだけであって、それ以上のものにはなっていません。

文書を書く時、たとえば「顧客提出のドキュメント」といったものであれば、「絵や文字」が描かれていれば十分です。それは「紙」と同じ程度に実用性があるわけで、「紙」の代用としての電子ドキュメント、あるいは「紙」の前段階の電子ドキュメントであるなら、これで良いわけです。

ところが、「文書」はそればかりではありません。

例えば「フィルターの設計」のようなことがしたい時、私はExcelに式を入れて... といったものを作っていたのですが、これが「文書」になっていたら便利だと思いませんか?

例えば「工程管理表」とか書く時、何かを変えたら自動的にいろんな箇所が動いてくれたら嬉しいと思いませんか?

例えば「出張報告書」を書いた時、ついでに旅費精算してくれたり、それが経理と連動したりしていると嬉しいと思いませんか?

世の中には、こんな感じで

リアクティブだと都合の良い文書

が結構あります。

今までですと、こういった時は無理やりExcelで作ったりもしていましたが、たいていは「文書は文書、アプリはアプリ」といった感じでした。

コンピュータで文書を扱うのが一般的になって、かれこれ40年以上たちました。もうそろそろこういったことが出来る「文書」が存在しても良いんじゃないかと思っています。私がこういったものを考え始めてからでも、30年以上になります。私の最初の著作

で作ったPascal処理系は、実はこういったことがしたくて作り始めたものです。あの頃は「アルゴリズムとコードとその解説」のまとめみたいなものを書きたかったのです。

私が使ったことがあるシステムでこういったことに一番近いところにあるのが、Jupyter notebookです。別にPython使ってデータサイエンスみたいなことをしなくても、「テキストと動くプログラムが混在した文書」が作れるのは素晴しいですね。

 

 

そんなことがあって、前作ではJupyter notebookを再実装してみました。これは実用にしたいという気持ちと共に、どうやって実現しているか仕組みを知りたかったからです。これで何となく感覚がつかめたことと、Jupyter notebookにある豊富なkernelを使う方法がわかりました。そして、それと共に「限界」も知ることができました。

今回はJupyter notebookの再実装としてではなくて、フロントエンドも含めて自分でコードを書いています。

そして、一つの明確なゴールを持っています。それは、

こういった本を「生きた文書」にすることです。

もちろん他にやりたいことや出来てしまうことはあると思うのですが、とりあえずその辺をゴールとしています。

このシステム、ついこの前までは個人的な盆栽プロジェクトだったのですが、商談中の案件になった部分もあるので、もう少し力を入れて行きたいと考えています。御興味のある方はお問い合わせ下さい。

最近のエントリー

OrangePi5にZabbixをインストールする

レビュー等の依頼について

オープンソースのノートアプリ「SiYuan」 - CasaOS AppStoreレビュー

お気に入りの色さがし1

創立記念日

現在の営業品目(2)

現在の営業品目(1)

SPDX License Listをデータ化した

Orange Pi5でC3TR-Adapterを試す

CasaOS上で会計システム「Hieronymus」を動かす

会計システム「Hieronymus」v1.0.0 リリースしました

CasaOSでファイル同期アプリSyncthingをセットアップする

第11回 Freshmeat

オープンソースノーコード「Activepieces」でワークフローを作る

RaspberryPiにパーソナルクラウドOS「CasaOS」を導入する

sequelize-cliでdb:migrateすると「SyntaxError: Unexpected token ':'」が出る

LED行燈の試作(2)

CMSの社内向けサービスのリニューアル

LED行燈の試作(1)

エントリを書くこと