20行代碼,帶你了解未來顛覆性的工作模式
未來,公司勞動力不再僅限於僱用員工,而是會由眾多分散的源源不斷提供強大驅動力的貢獻者構成。
未來,我們要做貢獻者
貢獻者會不斷為團體甚至整個社會帶來容易評估的價值;而傳統員工,在被重複性工作、不一致意見或上級的主觀期望所困擾的同時,大部分人缺乏有效的反饋機制和可觸及的成長機會。這就是為什麼現在有很大比例的勞動力都處於空閑的或者低效的工作狀態之中的原因。
數十年來,由於傳統的、上下屬的人員組成結構,問題一直在積累,人們也沒有意識、沒有想法去討論如何解決這些問題。
現在,情況可能會變得更糟糕了。過時的思維方式和運作方式與人工智慧等前沿技術正在結合,這可能會導致全球大多數勞動力因不可抗力而逐漸失去工作,慢慢的,變得沒有價值。
為了應對創紀錄的高失業率、求職機會受限和收入差距擴大等問題,我們迫切需要改變原有的思維方式,重新設計組織的核心運行機制。
未來組織的核心到底是什麼
在保障每個人可以更加容易地得到適合自身能力與經驗的工作機會時,我們也必須建立一套能夠培養和擴展貢獻者文化的工具,從而獲取更多的機會、幸福和成長。
那麼,我們應該如何去實現這個想法?利用現有技術,又如何去構建未來的工作模式呢?
我們意識到,需要藉助區塊鏈技術改變傳統的組織關係模式和工作模式。
因此,我們提出加密散列函數、分散式自治組織等基本概念。我們希望專註於未來工作中的一個核心區域,不受其他干擾因素影響而分散注意力。
溝通,是分散式協作的核心內容
在未來的工作中,我們需要進一步加強分散式協作。組織不是在封閉環境下運作,我們越早接受這一點,我們就越早開始改善工作體驗。
我們傾向於以不同期人際關係的方式去思考溝通。比如,Bob向Janet講述了他的周末生活,而Janet將之後幾天的類似情形告訴了Bob。
當我們在組織環境中考慮這一點時,我們會遇到同樣的的低效率,由於單向、上下屬的管理結構,它們經常被放大。溝通是不應該建立在這種灌輸信息的想法之上的。
在未來的工作形式中,我們將溝通視為信息交換。這種交換出現在人與人之間,系統之間以及人與系統之間。
作為貢獻者,你與這些信息源之間存在一對多的關係,這需要更靈活、更有效的方法來訪問你想要知道的內容。
另一方面,系統與來自各個角度和它運行數據類型範圍的信息源具有多對多的關係。有些信息只存在於智能合約中,而有些信息則是真實世界事件,甚至是高級貢獻者大腦中的專業知識。
智能合約:連接現實與數字世界的橋樑
信息是組織的生命線,我們需要藉助智能合約連接現實與數字世界。
智能合約(Smart contract )是一種旨在以信息化方式傳播、驗證或執行合同的計算機協議,於1994年由Nick Szabo首次提出。
智能合約允許在沒有第三方的情況下進行可信交易,交易可追蹤且不可逆轉。
智能合約是一個非常強大的工具,它可以將現實世界與數字世界結合在一起。就像人們進行對話一樣,數據會以各種方式進行「交流」。
在未來的工作形式中,藉助智能合約,所有形式的溝通都將變得更加有效。信息世界中將不再存在信息孤島,我們可以更加有效地得到、識別和利用信息。
所以,我們就需要搭建一座連接數字世界和現實世界的橋樑。
我們使用的計算機語言Solidity,在智能合約中,存在很多很多「事件」。事件允許鏈上交易與真實世界中的鏈下服務進行交互,從而跳過傳統工作模式的第三方,提高勞動力工作效率並及時接收反饋。
那麼智能合約的機制是怎樣的?如何編寫一個簡單的智能合約?
智能合約能夠在處理事務時發出事件,在更深層次上,事件利用EVM日誌記錄工具觸發JavaScript回調。
使用solidity語言創建一個輕量級智能合約:
pragma solidity ^0.4.23;
contract ContributorContract {
string firstName;
string lastName;
event Contributor(
string firstName,
string lastName
);
function setContributor(string _firstName, string _lastName) public {
firstName = _firstName;
lastName = _lastName;
emit Contributor(_firstName, _lastName);
}
function getContributor() view public returns (string, string) {
return (firstName, lastName);
}
}
在Solidity中創建事件非常簡單,啟動setContributor()時,就會創建一個事件。當我們設置貢獻者的名字時,這個輕量級智能合約就會觸發一個事件。
從Solidity發出的可能看似基本的事件,也許會讓我們看到一個充滿更多可能性的世界。
我們利用基於事務的模型來處理通知、後端流程或者希望從事務中觸發的任何其他內容。
發出事件只是第一步,接下來,我們需要確保事件的背後是什麼。
需要不斷在貢獻者變更或創造事件的情形下思考,我們可以根據添加到生態系統的新貢獻者或正在更新的現有成員來觸發需要發生的事件。
在我們的示例中,我們仍將使用上面的貢獻者合約,我們假設在貢獻者創建事件時,我們需要更新UI,事件可以利用適當的監聽器在寬範圍的下游操作上使用。
我們使用JavaScript(Web3)通過客戶端的本地或遠程乙太網節點與智能合約進行交互。為此,我們必須先創建一個變數來引用這個事件。我們可以在下面添加前端代碼:
var contributorEvent = ContributorContract.Contributor();
變數定義完成之後,利用回調函數在contributorEvent上使用.watch()方法。
contributorEvent.watch(function(error, result){
if (!error)
{
// update UI
} else {
// sit in corner and cry
console.log(error);
}
});
在運行不報錯的情況下,我們根據需要隨時進行UI更新。這方面的基本示例包括隱藏、顯示或更新頁面的不同元素。至此,就搭建好了鏈上和鏈下交流之間的橋樑。
通過以上流程,我們就完成了鏈上交易與非鏈服務交互的基本操作,我們就可以設計出基於任意事件的一系列功能,比如,添加新的貢獻者、補償項目貢獻者和獲取事件通知等。
溝通的演變始於50萬年前語言的起源。從那個時候開始,我們一步一步將信息交流變得更加動態、更加高效和更加流暢。
藉助智能合約,我們時刻接收、理解和反饋現實世界和數字世界中存在的信息,這種工作方式是及時的、自由的和高效的。也許未來,你並不需要走出家門,就可以完成多個職位的工作,完美實現自己的人生價值。
TAG:程序員小新人學習 |