Contents
這是 Soft & Share 訂閱會員特別服務,我們會選讀一些有趣,有啟發性的文章,並摘要我們看到的重點。
摘要只是幫助快速知道這篇文章的內容,如果對文章的主題內容有興趣,我們會建議自己完整讀完一次。
✍ 在未來一週,這篇網頁內容會持續新增內容,請用 e-mail 訂閱這篇文章的更新通知,或是到 slack 的 #random channel 觀看更新通知
一週選讀內容
11/5
[趨勢][英] No-Code 世代已經來臨
在過去的兩年左右的時間裡,我們已經看到一類完整的軟體的興起,該類軟體被廣泛地(而且非常不准確地)稱為“無程式碼平台”。
曾經需要一個工程師團隊花費幾個小時才能完成的專案,現在可以透過用戶界面單擊兩次,將它們縫合在一起。
知名的 No Code 平台
無代碼工具之所以成功,並不是因為它們易於使用-它們之所以成功,是因為它們與新一世代的人連接在一起,他們能夠準確理解這些平台運行所需的邏輯 – 你必須知道如何設計資料樞紐表,或者了解什麼是機器學習功能以及該功能可能有用。您必須考慮數據以及輸入,轉換和輸出方面的問題。今天的學生不僅將他們的電腦和行動設備視為消費螢幕,而且還具有將功能轉換。他們廣泛地將它們用作自我表達,研究和分析的工具
以 Roblox 和 Minecraft 等平台的流行為例。這兩個平台很容易被嘲笑為只是一代人對遊戲的痴迷,這兩個平台都教孩子們如何使用他們的設備建構整個世界。更好的是,隨著孩子們推動這些遊戲提供的工具集的新領域,他們受到鼓舞去開發自己的工具。大量的指南和線上社群教孩子們如何為這些平台建構自己的遊戲和外掛(Lua從未如此流行)。
有1.5億人次玩Roblox遊戲,涵蓋4000萬用戶創造的體驗,該平台擁有近35萬開發人員。Minecraft擁有超過1.3億活躍用戶
新一代的年輕人資料分析和工程專業知識幾乎是不可思議的,而這一知識正在廣泛民主化,而這正是新的數位鴻溝正在出現的地方。
在當今的商業中,僅打開電子試算表並進行一些隨意的觀察是不夠的。如今的新員工知道如何深入系統,使用無代碼平台將不同的程式組合在一起,以及如何以更全面和實時的答案來解決問題。
僅僅幾年前,一家電商經理可能(並且很可能會強調)將他們的銷售數據放入Excel中,然後讓它徘徊在那裡以備不時之需,但新一代人準備連接多個線上工具以建立在線上店面(透過Shopify或Squarespace等無程式碼工具),使用無代碼資料平台計算基本的LTV得分,並透過基本的電子郵件傳遞服務對市場推廣,對他們的最佳客戶進行優先排序。
感想
未來的鴻溝- 不會使用 no code 平台的人,會使用 no code 平台的人,開發 node code 引擎的人。
軟體開發技術
[英] 軟體架構:你需要了解的最重要的架構模式
架構模式是在給定情境中解決軟體架構中常見問題的通用,可重用的解決方案。
如今,許多程式設計師仍然對架構模式之間的差異感到困惑,甚至對此並不瞭解。
這篇文章講解了以下的架構模式
- Layered Architecture
- Pipe and Filter
- Client Server
- Model View Controller
- Event Driven Architecture
- Microservices Architecture
每一個模式的講解都包含了
- 情境 ( Context )
- 問題
- 解決方案
- 弱點
[英] 分散式系統學習筆記
6.824是一門由12個單元構成的核心研究生科目,包括演講,閱讀,程式設計實驗室,可選專案,期中考試和期末考試。 它將介紹工程分散式系統的抽象和實現技術。 主要主題包括容錯,複製和一致性。 該課程的大部分內容包括研究和討論分散式系統的案例研究。
先決條件:6.004和6.033或6.828之一,或等效的。 大量的程式設計經驗將對實驗室分配任務有所幫助。
另一個上了同樣課程的人也寫了一份分散式系統筆記,這個筆記網站是使用這個開源專案架設的 – https://github.com/rust-lang/mdBook,開源報報有介紹過。mdBook – 它可以放 LaTeX 和程式碼,並可以即時更新,所以這個筆記網站的內容都是透過網頁即時更新
軟體工程師職涯成長
[英]打造糟糕的東西
這篇文章可以再加上一個副標題 – 邁向資深工程師之路
這篇作者有 7 年的軟體開發經驗,她覺得自己只是個中級的軟體工程師,她跟許多資深工程師聊過,發現這些資深工程師都有一個共同的特色 – 犯錯的經驗。
她提到如果工程師在一個被保護得很好的環境裡是無法成為資深工程師,資深工程師之所以成為資深工程師是因為自己有獨當一面且踩過無數的地雷的經驗。
如果你是一位技術主管,你是如何帶工程師?你是否在設計架構時就把你之前犯過的錯誤修正,讓工程師在你的保護傘下把專案做完?如果是這樣,這些工程師是無法成為資深工程師。
讓你從資淺的工程師走向中級工程師的經驗並無法讓你從中級工程師走向資深工程師。
這位作者最後給出了建議,想辦法去參與可以讓你參與決策的專案,如果你身在大公司,很怕犯錯,那就去外面尋找,她覺得新創公司是一個比較可以容忍犯錯的環境 ( 矽谷??) 想要成為資深工程師那就開始打造可怕的東西 ( 意思可以讓你從錯誤中學到經驗的東西 )
產品設計
[英] 使用者決策的心理
研究表明,使用者實際上是根據一組可預測的潛意識模式做出決策的
啟發法 ( Heuristics ) – 心理學上「啟發法」指用於解釋人們如何進行決策、調整和解決問題的簡單有效的概測規則,通常用以處理複合的問題和不完全的資訊。這個規則在大部分情形下有效,但是在特定的情形下可能導致系統性的認知偏差。( 來自維基百科的解釋 )
- 滿意的 (Satisficing) – “滿足”和“足夠”兩個詞的組合。這意味著解決你找到的第一個合理選擇,而無需考慮所有可能性。
- 損失厭惡( Loss Aversion ) – 人們認為,失去的痛苦大約是獲得樂趣的兩倍。與我們取得收益相比,我們付出更多的工作和承擔更多的風險來避免損失。
- 可用性 ( Availability ) – 人們基於立即想到的東西得出結論。我們非常重視快速回憶的事物以及我們已經可以在眼前看到的事物。
- 決策疲勞( Decision Fatigue ) – 做出很多決定會降低一個人做出理性決定的能力。也很累。
- 參考依賴( Reference Dependence ) – 人類沒有確定絕對價值的天生方法。因此,我們通過將一件事與另一件事進行比較來賦值。我們以相對而非絕對的方式做出判斷。
- 現狀偏差( Status Quo Bias ) – 除非有令人信服的誘因,否則人們更有可能堅持既定的狀態。換句話說,我們傾向於不改變既定局面。
- 希克定律( Hick’s Law ) – 當前刺激的數量會影響做出決定所需的時間和精力。
了解以上使用者是如何做決策的,這篇文章後面有告訴你在 UI 設計上要注意什麼事項,所以這篇文章適合做前端設計( 網頁或是行動 app ) 的工程師參考