fbpx

Soft & Share 開源報報 058

這是 Soft & Share 為訂閱會員所推出的服務,小編週一到週五會每天整理一篇開源專案的摘要說明整理 (中午 12 點前會發佈在 Soft & Share 網站 ) ,讓你可以利用中午休息時間快速掌握目前開源專案的焦點。( 之前出版的開源報報 )

學習資源

一個 Kubernetes 和 lstio 工作坊的教材

這個工作坊將帶你進入 Kubernetes 的基礎知識和服務網格 ( service mesh )。 你將在電腦上安裝和執行所有服務。 請確保檢查了先決條件列表並安裝它們。


Git 的飛行規則

什麼是”飛行規則”?

這是一篇給使用Git的程式設計師們的指南,用來指導問題出現後的應對之法。

歐來禮有一系列的書籍 xxx CookBook ,這個飛行規則跟 CookBook 書籍系列的設計很類似

這份文件有簡體中文翻譯

Web 應用程式開發

針對最新的網頁技術的一個 headless GraphQL 電子商務框架

一個基於 Node.js 和 Nest & TypeScript 的 headless GraphQL 電子商務框架,專注於開發人員的生產力和易於客製化。


你不需要 Moment.js – 列出可以取代 moment.js 的 javascript 函式

Moment.js 是一個非常棒的時間和日期程式庫,有很多很棒的功能和實用功能。 但是,如果你正在處理一個對效能敏感的 web 應用程式,那麼由於其複雜的 api 和龐大的捆綁套件大小,它可能會導致巨大的效能支出。

這個專案也有提供一個 ESLint 外掛來幫助你檢查辨識你的程式碼有哪些地方可以不需要使用 moment.js

資料科學

Pytorch-lightning – 針對機器學習研究人員的輕量級 PyTorch 包裝

Lightning 是 PyTorch 上的一個非常輕量級的包裝,它將科學程式碼與工程程式碼分離開來。 與其說它是一個框架,不如說它是一個樣式指南。 通過重構你的程式碼,可以自動化大多數非研究性的程式碼。

要使用 Lightning,只需要將你的研究程式碼重構成 LightningModule 格式(科學) ,Lightning 將自動完成剩下的工作(工程)。 Lightning 保證測試,正確,現代最佳實踐的自動化部分。

藍色代表工程的部分,紅色代表科學的部分


Pytorch3D 是 FAIR 的可重用元件程式庫,用於使用 3D 資料進行深度學習

Pytorch3D 為 PyTorch 的三維電腦視覺研究提供了高效、可重用的元件。

主要的功能

  • 為三角網格( triangle meshes ) 儲存和操作的資料結構
  • 在三角網格上的有效操作(投影變換,圖卷積,取樣,損失函式)
  • 一種可微分的網格渲染器

Pytorch3D 的設計是為了平滑地整合深度學習方法來預測和處理三維資料。基於這個原因,PyTorch3D 中的所有操作元:

  • 使用 PyTorch 張量實現
  • 能處理小批量異質資料
  • 可以被微分
  • 可以使用 GPUs 進行加速

攝影機的位置最佳化

雲端和網路管理

peerd – AWS VPC Peering 連線管理工具。

Peerd 是一個 AWS VPC Peering 連線管理工具。 它從 yaml 檔案建立 VPC 的全網格( full-meshes ),並管理建立、刪除和路由表更新的整個生命週期,以使 VPC 的點對點連線( peerings ) 在橫跨帳戶和地區之間有用。

行動應用程式設計

KaMP – 一個程式碼和工具的集合,目的在讓你的行動 app 團隊快速使用 Kotlin 來支援跨平台

KaMP 工具套件的目標是促進你對於使用 Kotlin 跨平台(又名 KMP)支援的評估( 支援 iOS/Android ) 。 它是一個程式碼和工具的集合,目的在讓你快速開始。

這個工具套件背後有一家商業服務公司在支援,請參考 https://touchlab.co/


filebox – 為 Android 開發的非同步檔案下載器

這個 Android 程式庫有實現 cache 的功能 – 這個程式庫假設 URL 內容變化很小。 所以基本上這個程式庫會下載一個給定的 URL,如果它已經被下載了,它會直接提供下載的內容。

cache 的演算法 –  如果檔案的TLL(生存時間)已啟動但檔案未更改,則Filebox不會再次下載檔案


Flutter 道場 – 建立 Flutter 知識體系的優美設計與實用方案

flutter_dojo 專案的主要目的是為了幫助 Flutter 初學者快速入門 Flutter 開發,並藉助該專案快速建立起 Flutter 的知識體系架構。

flutter_dojo 主要分為下面幾個部分:Widgets、UI Pattern、Develop UI Kit、Animations、Back-end Util。


React Navigation – 為基於 React Native 應用程式設計的 Routing 和瀏覽程式庫

詳細文件請參考 https://reactnavigation.org/


Kotlin Power Assert – Kotlin 編譯器外掛,以啟用 Kotlin 程式語言中的 Power Assert 功能

Kotlin Compiler Plugin,攔截了 Kotlin Assert 函式呼叫並將其轉換為類似於 Groovy 的 Power Assert 功能。 這個外掛為 Kotlin 編譯器使用了新的 IR 後端。


一個小型基於 React Native 的設計系統

React Native Design System 是一套設計規則和元件程式庫,它使你能夠以易於使用的跨平台元件更快地進行原型化。

程式設計語言

opnieuw – 使 Python 程式碼更可靠的奇怪技巧

Opnieuw 是一個用 Python 編寫的通用重試( retry ) 程式庫,用於簡化對於同步和非同步任務新增重試行為的任務。 Opnieuw 簡單易用。

適合使用在需要跟遠端網路通訊的 Pyhon 程式,當網路有問題時需要做 retry 的狀況

Opnieuw 可以很容易地新增強大的重試:

  • 有一個單一的重試策略,使用 jitter 做指數補償( exponential backoff ) ,這使得不會忘記新增 jitter
  • 它只有兩個引數,用來消除無效和無意義組合的可能性
  • 參數命名清晰,以避免混淆,例如呼叫次數(包括初始呼叫)和重試次數(不包括初始呼叫)
  • 這些參數很直覺: Opnieuw 沒有設定基本指數補償延遲演算法,而是接受一個最大的呼叫次數,以及第一次呼叫後仍然重試的最大時間
  • 時間單位從參數名中可以清楚地看到,這使得修飾後的程式碼顯而易見,而且不需要參考文件就可以閱讀

嵌入式系統

Binwalk – 韌體分析工具

可以用來針對韌體做分析,逆向工程,和提取映像檔

這個開源專案最後賣給了一家公司,變成了雲端服務商業版本 – Binwalk Pro

喜歡今天小編整理的開源報報嗎?歡迎給小編意見與回饋

Comments are closed.

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: