IOTO到底是什么?

9月8日,我發(fā)布了IOTO正式版的先行版本。
從7月15日寫下IOTO內(nèi)置數(shù)據(jù)同步腳本的第一行代碼算起,IOTO也經(jīng)過了7周的開發(fā)和迭代了。
但與IOTO相關(guān)的思考和實踐,卻是在這兩年使用和教授Obsidian的過程中,一點點在積累和醞釀的。
在9月7日晚上進(jìn)行關(guān)于IOTO的第八次交流和分享的時候,我正式把IOTO定位成一個基于Obsidian的知識管理框架。
這是目前,我覺的我能為IOTO找到的最精準(zhǔn)的定位。
畢竟,一個產(chǎn)品,需要有明確的定位,才能有更清晰的發(fā)展方向。

為什么不再叫IOTO工作流?
IOTO是不是工作流呢?是,確實是,也是我一直在用的工作流。
作為一個知識工作者,當(dāng)我們面對知識管理的需求和挑戰(zhàn)時,我們都不可避免的要去解決關(guān)于輸入(Input)、輸出(Output)和成果(Outcome)的問題。我想象不到有哪一個真正的知識工作者會有例外。
為了更好地管理我們的IOO相關(guān)操作(IOO,是我對Input、Output和Outcome的簡稱),我們也需要通過項目管理或者任務(wù)管理來去整合我們的IOO操作。這里的核心就是任務(wù)(Tasks)管理,所以我在最初把這一套工作流簡稱為IOTO。
但是,在我一邊使用IOTO工作流,一邊去開發(fā)與IOTO相關(guān)的功能和組件的時候,我越來越意識到這些功能和組件,可以被移植到任意一個基于Obsidian的工作流中去。
或許,你在用ACCESS;或許,你在用PARA;或許,你已經(jīng)打造了一套自己滿意的獨特工作流。
但是,只要你的工作流中涉及到IOO的操作,其實你都可以使用IOTO提供的功能和組件去優(yōu)化你現(xiàn)有的工作流。你可以不把你的工作流叫做IOTO,但是如果你愿意,你可以在你的工作流中使用IOTO。
所以,我不再把IOTO定位成一個工作流,而是把它定位成一個基于Obsidian的知識管理框架。你可以使用IOTO去打造屬于你自己的理想工作流。
為什么是基于Obsidian?
Obsidian的與眾不同,不需要我再贅述了。
它最吸引我的地方就在于,Obsidian給了我去打造我理想的工作流的可能。這在我所了解的其他知識管理和筆記工具里,都是無法做到的。
我不想去爭論到底哪個筆記工具才是最好的,這個一點意義都沒有。適合你的,就是最好的,就這么簡單,和你找對象一個道理。
IOTO核心框架是基于Obsidian,以及兩個Obsidian中極其重要的插件來構(gòu)建的。
它們分別是Templater和Dataview。
為什么是Templater和Dataview?
當(dāng)我們愿意投入時間,去基于Obsidian打造一個自己理想中的工作流時,我們其實就是基于Obsidian這個產(chǎn)品去打造一個屬于自己的數(shù)字技術(shù)產(chǎn)品。
沒錯,你就是在打造一個產(chǎn)品,一個可能只有你自己使用的獨特的產(chǎn)品。
使用Obsidian的人中有很多技術(shù)大牛,也有很多技術(shù)小白,以及從技術(shù)小白過渡到技術(shù)大牛的中間的形形色色的人群。
這些人中,很多人并不知道如何合理的去打造一個技術(shù)產(chǎn)品,只能通過自己東拼西湊的教程去對自己想要打造的產(chǎn)品進(jìn)行縫縫補(bǔ)補(bǔ)的操作。
這樣的莽打莽撞,也有可能折騰出一個讓自己歡喜雀躍的解決方案;但更可能的是,面對著一個充斥著各種插件、腳本和樣式的Obsidian庫,在不斷涌現(xiàn)的Bug和莫名奇妙的問題中,逐漸失去了維護(hù)自己解決方案的耐心,甚至逐漸失去了維護(hù)Obsidian的興趣,最后任由Obsidian變成另一個知識垃圾桶,被遺忘在自己硬盤的某個角落。
如果你稍微接觸過數(shù)字產(chǎn)品開發(fā)的相關(guān)內(nèi)容,你或許就會聽過產(chǎn)品架構(gòu)這個說法,你也可能聽過MVC架構(gòu)這個縮寫。
MVC不是去構(gòu)建數(shù)字產(chǎn)品的唯一架構(gòu),但可能是一個最基本、最通用的架構(gòu)。
M是Model(模型),主要是指你的產(chǎn)品應(yīng)用中的數(shù)據(jù)層。
V是View(視圖),主要是指你的產(chǎn)品應(yīng)用中的表現(xiàn)層。
C是Controller(控制器),主要是你的產(chǎn)品應(yīng)用中的控制層。
Templater這個插件更多是基于Obsidian提供的數(shù)據(jù),通過邏輯控制去進(jìn)行數(shù)據(jù)信息的呈現(xiàn)。(比如IOTO中的模板自動化層,使用的就是Templater的這部分能力)
Templater也可以基于Obsidian提供的數(shù)據(jù),通過邏輯控制去和外部的數(shù)據(jù)服務(wù)平臺進(jìn)行數(shù)據(jù)的同步。(比如IOTO中的數(shù)據(jù)同步層,使用的就是Templater的這部分能力)
Dataview可以基于Obsidian提供的數(shù)據(jù),去構(gòu)建一個自己需要的數(shù)據(jù)模型,再通過自己定義的控制邏輯去用自己指定的方式呈現(xiàn)這些數(shù)據(jù)。(比如IOTO中帶數(shù)據(jù)看板層,使用的就是Dataview的這部分能力)
Templater和Dataview這兩個插件,直接切中了數(shù)字產(chǎn)品架構(gòu)的核心模塊,所以他們能位列Obsidian插件下載排行的前十,是毫不意外的。
但是這兩個插件的學(xué)習(xí)和使用成本,對絕大部分使用Obsidian的人而言都是極高的。所以,在IOTO的核心功能部分,我基于這兩個插件去打造相關(guān)功能,提供相關(guān)的使用接口和組件,就是為了讓更多人能直接的感受這兩個插件帶來的便利和強(qiáng)大。
當(dāng)你能切實感受到這兩個插件給你帶來的好處了,你或許會更有動力去深入的學(xué)習(xí)它們。那到了那個時候,IOTO框架也會成為你的一個學(xué)習(xí)參考。
IOTO框架會不會再融入其他插件?
這個問題的答案是:會,也不會。
會,指的是IOTO的輔助功能會借助其他插件,比如Excalidraw。
不會,指的是IOTO的核心功能只會借助Templater和Dataview(或者以后的Datacore)。
IOTO框架會不是成為一個獨立的插件?
這個問題的答案也是:會,也不會。
會,指的是IOTO會提供一個配套的設(shè)置插件,方便使用IOTO的人對IOTO進(jìn)行個性化定制。
不會,指的是IOTO的核心功能會繼續(xù)依賴那些已經(jīng)很成熟的優(yōu)秀插件去打造。我寧愿擁抱他人的偉大,而不是去成全自己的自大。
IOTO能不能在其他工具中使用。
這個問題的答案是:可以,也不可以。
可以,指的是IOTO的工作流和文件管理理念,你是可以在任何筆記工具中使用的。
不可以,指的是IOTO的框架,目前你只能在Obsidian中使用。
IOTO的未來
說真的,我不知道IOTO的未來會是怎么樣的。就像在兩個月前,我也不知道IOTO的今天會是這個樣子一樣。
但,不確定,恰恰是人生最美妙的部分。
但有一點,一定是可以確定的,IOTO是在不斷變化的。至于是不是變的更好,這個不是我一個人說了算的。
致謝
感謝在IOTO的開發(fā)過程中,提出過需求、指出過Bug、表示過質(zhì)疑的每個人。沒有你們,我做不出IOTO。
感謝選擇加入Johnny學(xué)Obsidian年度學(xué)習(xí)會員和愿意付費體驗IOTO先行版的每個人。沒有你們,我無法專心地用固定時間去開發(fā)IOTO。在固定的時間,專心地做一件事,這對一個產(chǎn)品的誕生,至關(guān)重要。
感謝所有在B站觀看IOTO相關(guān)視頻的你,感謝你們的留言、轉(zhuǎn)發(fā)和點贊,感謝你們的投幣,感謝你們的理解和不理解。
感謝一直在堅持使用IOTO的你,你們的堅持,是我持續(xù)優(yōu)化的最大動力。
最后,感謝今天在群里對我表示教師節(jié)祝福的你們。我一直不敢稱自己是老師,我只是一個喜歡分享的人。
但我愿意承擔(dān)起一個老師的責(zé)任,努力把我想要分享的內(nèi)容講解的更清楚,更容易理解和接受。
感謝你們給我的激勵和動力。
最后的最后,祝每一個看到這篇文字的老師,節(jié)日快樂。