Contents
這是 Soft & Share 為訂閱會員所推出的服務,小編週一到週五會每天整理一篇開源專案的摘要說明整理 (中午 12 點前會發佈在 Soft & Share 網站 ) ,讓你可以利用中午休息時間快速掌握目前開源專案的焦點。
學習資源
Grokking Deep Learning
這是知名的 Grokking 系列電子書關於深度學習的主題,這個 github 放了 Grokking Deep Learning 這本書的範例程式碼,Grokking Deep Learning 也有線上課程
程式設計師的最好學習網站
在學習電腦科學時,有一些你必須知道如何從一些有用的網站獲得資訊,以便更好地使用你的技術,學習新的東西。 這個 github 專案收集了詳盡的列表。
進行網頁程式專案的原則
這位開發者整理一個他在進行網頁程式設計專案的備忘錄,有些是邏輯問題,有些是個人品味問題,包含了以下主題
- Design/UI
- Graphics/Charts
- HTML/JavaScript
- 與資料一起運作
- 網站設定
- 伺服器設定
- 一般工作流程
有支援遠端工作的公司列表
這個專案收集了有提供遠端工作公司的列表和職缺,這個名單的公司員工人數至少都有 50 人以上
這個專案的維護者會維護這個名單主要想要找合作的公司,他目前在 Automattic ( 就是提供 WordPress 商業支援的公司 ) 擔任遠端的資料科學家工作,這是他的網站,這篇文章他分享了他如何成為 Automattic 的遠端資料科學家,這篇文章他分享了關於擔任遠端資料科學家的幾點思考
工具
Mac 命令列工具瑞士小刀
這個命列列工具跟 Mac 內建的命令列工具不同之處
- 它的主要目的是做系統管理並使其更容易完成
- 它不會安裝第三方工具,因為它不需要相依套件
- 安裝非常簡單,不需要任何干預
- 它只使用 macOS 命令
Vim 的外掛 – 模糊搜尋
這是一個使用 Python 開發的 Vim 編輯器外掛可以讓你在 Vim 中做模糊搜尋

使用 Rust 開發的搜尋引擎
想在在自己的公司內架設一個搜尋引擎,這個搜尋引擎強調跟 Elastic Search 和 以 lucene 為基礎的搜尋引擎不一樣,它有幾個特色
- 當你在輸入的時候就開始搜尋 ( 在 50ms 內得到回答 ) ( 註 搜尋時間應該跟硬體與資料庫的大小有關係? )
- 全文檢索搜尋 ( 註:如果企業內部會需要不同檔案格式的內容搜尋 )
- 輸入錯誤容忍度 ( 了解輸入的錯誤和拼字錯誤 ) ( 註:這個功能 Google 做的很棒 )
- 支援漢字 ( 註:不知道是否有支援繁中? )
- 支援同義字
- 容易安裝,佈署,和維護
- 回傳整份文件
- 高度可客製化
- 支援 RESTfull API

VS Code 集錦
Facebook 已經將 VS Code 列為他們內部開發的預設平台, VS Code 無疑是微軟近幾年來最成功的開源專案,小編也很喜歡用,這個網站收集了許多可以增進 VS Code 生產力的外掛程式
QA Wolf – 使用一個指令來錄製瀏覽器的測試操作
主要功能有
- 錄製你的測試 – 可以從你在瀏覽器中的互動產生 Jest 和 puppeter 測試程式碼
- 設定 CI ( Continue Integration ) – 支援 CircleCI、 Azure DevOps 和 GitHub Actions
- 容易偵錯 – 每個測試執行包括影片、 gif、互動式 DOM 錄製和作為 artifacts 的瀏覽器日誌。
- 避免崩潰 – QA Wolf 等待下一個元素或警告( assertion )來避免載入崩潰 。 它使用多個屬性的元素查詢,或者你指定的測試屬性(如“ data-qa”) ,以避免選擇器崩潰。 會按照時間表對公共網站進行 QA Wolf 測試,以保持穩定性。
Web 應用程式開發
Grid Layout – 將卡片元素包括內容無限地排列在網格佈局中
想要做一個 Pinterest 風格的網站 Layout ,這個 Javascript 程式庫提供了不同的佈局風格

顯示 modern web 的狀態機器和圖示
狀態圖是對有狀態、反應系統( reactive systems )進行建模的一種形式化方法。 這對於以宣告方式描述應用程式的行為非常有用,從單個元件到整個應用程式邏輯。
一種用於在 Swift 中編寫型別安全的 HTML、 XML 和 RSS 的 DSL
DSL 是 Domain-Specific Languages 的縮寫 – 開發人員為了解決特定領域的問題所定義的專用語言
Plot 一個用於在 Swift 中編寫型別安全的 HTML、 XML 和 RSS 的領域特定語言。 它可以用來建立網站、文件和摘要,作為模板工具,或者作為高階元件和工具的渲染器。 它的主要重點是靜態網站生成和基於 swift 的網頁應用程式開發。
Plot DSL 支援了以下標準
這個專案適合已經熟悉 Swift 的開發者,並計畫使用 Swift 做一些後端應用
資料科學
使用神經網路將設計的雛形轉換成靜態的網站
如果你想知道這個程式庫的細節可以參考這篇文章 – How you can train an AI to convert your design mockups into HTML and CSS
大概很多人看了之會會說前端工程師未來可能會失業 ,但是對於我這個前端白癡而言,這種工具真是個福音,我只要專注在後端的商業邏輯,並做好 API 跟產生的前端整合就好了,前端還是有工作做,只是變得更簡化,設計師還是有工作
使用 PyTorch 實現 “Real-time Scene Text Detection with Differentiable Binarization”
這個專案是來自一篇論文 – Real-time Scene Text Detection with Differentiable Binarization,用來辨識影像中的文字

自然語言處理最佳實踐和範例
這個專案是微軟支援的,自然語言可以說是人工智慧的核心,這個知識庫包含建構 NLP 系統的範例和最佳實踐,使用 Jupyter 筆記本和一些實用工具。 知識庫的重點是文字和語言研究的最先進的方法和研究人員和從業人員的常見場景。
既然是微軟支援這個專案,裡面也少不了會提到 Azure 所提供的機器學習服務
行動應用程式設計
Splitties – 一些小型的 Kotlin 程式庫,可以讓你愉快地進行 Android 程式開發
這個程式庫的目的是減少你必須編寫的程式碼數量,減輕程式碼讀寫時間,這樣你就可以有更多的時間關注使用者和要構建什麼功能(即使只有您自己) ,或者有更多的時間享受樂趣。
這個專案被命名為“ Splitties” ,因為它被分割成小模組,作為獨立的程式庫發佈,所以你只能新增你需要的模組到你的專案 / 模組的模組,這有助於減少最終二進位制檔案的大小
使用模組化、乾淨、可擴展、可測試架構的 Android 應用程式樣本,該架構遵循 Jetpack 的最佳實踐,使用 Kotlin 編寫
這是一個範例專案,它展示了使用 Kotlin 和最新技術堆疊開發 Android 應用程式的最新方法。
該專案的目標是示範最佳實踐,提供一套指導方針,並呈現模組化、可擴展、可維護和可測試的最新 Android 應用程式架構。

程式設計語言
Go 套件包含高效編碼、解碼和驗證 api 的實現
https://github.com/segmentio/encoding
這是一家商業公司 Segment ( 做客戶資料分析 ) 所使用的內部 Go 套件
這個專案的開發動機
在 Segment 中,我們在傳送、排隊( queuing ) 或儲存訊息時對資料進行大量的封送( marshaling ) 和解封送( unmarshaling ) 處理。 我們需要在基礎設施上提供的資源與我們正在處理的資料的型別和數量直接相關。 在我們執行的規模,我們選擇建立程式的工具對於我們的系統的效率可以有一個很大的影響。 當我們達到我們使用的程式碼的極限時,探索替代方法是很重要的。
這個 github 專案包括對 Go 套件進行的各種格式的封送和解封送資料的實驗。 雖然我們的重點是提供高效能程式庫,但是我們也通過實現 api 來實現非常低的開發和維護開銷,這些 api 可以用作預設解決方案的外掛替代品。
將 TypeScript 編譯成 WebAssembly
這個專案的開發動機
- 你現在可以在不學習新語言的情況下編寫 WebAssembly,並且可以利用 WebAssembly 可能提供給你的所有好處。
- Assemblyscript 是無摩擦的。 它不僅允許你使用 TypeScript 來編寫 WebAssembly,[ … ]它還可以生成 glue-free WebAssembly,這些模組非常小,效能也不錯。
- Javascript 作為唯一的瀏覽器語言的鼎盛時期已經結束,但是大多數 web 開發人員已經習慣於編寫 JavaScript,而學習一種新的語法只是為了訪問 WebAssembly 並不總是理想的。
喜歡今天小編整理的開源報報嗎?歡迎給小編意見與回饋
歸檔