2020第29周
2020-07-13
-
程序员的无奈
-
宝马汽车的付费加热座椅
- 德国宝马汽车公司最近发布了新的汽车操作系统,最引人注目的是将许多汽车功能做进了系统,让它们都变成了软件服务,像自动导航、自动远光灯、甚至加热座椅都变成了软件控制。
- 新的系统还带有收费设置,这意味着,这些服务都可以改成按小时收费,付款后才能开启。以后,你可能需要按月购买服务包(service pack),才能使用汽车的某些功能,比如冬季购买加热座椅服务,夜里购买自动远光灯服务。
-
使用Tesseract C ++库的OC
- https://github.com/otiai10/gosseract
- 使用Tesseract C ++库的Golang OCR软件包。
-
Go库中的跨平台,可在通知区域中放置图标和菜单
- https://github.com/getlantern/systray
- systray是一个跨平台的Go库,用于在通知区域中放置图标和菜单。
- 特征
- 在Windows,macOS和Linux上受支持
- 可以检查和/或禁用菜单项
- 可以从任何Goroutine中调用方法
-
webRTC执行流程

-
HonKit使用Markdown构建漂亮的书-GitBook的叉子
- https://github.com/honkit/honkit
- HonKit正在使用GitHub / Git和Markdown构建漂亮的书。
-
免费FQ
2020-07-14
- 与GitHub和Twitter集成的新鲜而现代的Google联系人管理器。
- 小而巧的跨平台原生GUI库
- https://z-kit.cc/
- GoVCL是完全开源的、免费的、跨平台Go语言GUI库。核心绑定自Lazarus创建的通用跨平台GUI库liblcl
- 跨平台的Golang GUI库
- https://github.com/ying32/govcl
- 跨平台的Golang GUI库,核心绑定自Lazarus创建的通用跨平台GUI库liblcl。
2020-07-15
- https://github.com/webclipper/web-clipper
- 对于Notion,OneNote,Bear,Yuque,Joplin。将任何内容剪切到任何地方
- 您可以使用Web Clipper将网络上的任何内容保存到任何地方。
- 为Go 1.7+实现线程本地存储(TLS)的一种更安全的方法。
- https://github.com/huandu/go-tls
- 软件包tls通过劫持runtime.goexit堆栈为任何goroutine提供TLS 。与其他类似软件包相比,此软件包避免了TLS中的任何潜在资源泄漏。
2020-07-16
- 怎么更好的推动开源产品和社区成长:
- 线上+线下:两者要相结合,相互弥补。
- 寻找和自己比较 match 的社区,做适当宣传:这里不能太直,推荐知识分享的方式。
- 有意识培养新人:新建一些比较简单的 issue ,专门给想贡献的同学做开始。
- 招募学习班:每次手把手培养新同学,一对一的协助他们完成第一个 PR 提交,从而逐步开始能为项目做贡献。
- 避免私聊:引导大家到邮件列表或者 Github issue 交流,知识需要沉淀、广播,对于某些特别有意义的话题,更是如此。
- 开源作品为了保持活跃度,需要有阶段性的产出,比如支持某重要功能、引入新概念等。要一直勾着开源用户的心,这些想法可能来自社区,也可能是社区委员会的不定期聚会。
- 此外一些个性有趣的用户使用过程、疑难杂症排除过程等,都可以记录下来给分享给社区。和大家一起学习一些问题排除方法,以及开源背后的故事。
- APISIX
- https://gitee.com/iresty/apisix
- https://github.com/apache/incubator-apisix
- https://github.com/apache/incubator-apisix-dashboard
- Apache APISIX (incubating) 是一个基于云原生、高速可扩展的开源微服务网关节点实现,其自身主要优势是高性能和强大的扩展性
- https://www.iresty.com/
- APISIX 是一个云原生、高性能、可扩展的微服务 API 网关。
- 它是基于 Nginx 和 etcd 来实现,和传统 API 网关相比,APISIX 具备动态路由和插件热加载,特别适合微服务体系下的 API 管理。
- APISIX 是基于云原生的微服务 API 网关,它是所有业务流量的入口,可以处理传统的南北向流量,也可以处理服务间的东西向流量,也可以当做 k8s ingress controller 来使用。
- APISIX 通过插件机制,提供动态负载平衡、身份验证、限流限速等功能,并且支持你自己开发的插件。
- 你可以把 Apache APISIX 当做流量入口,来处理所有的业务数据,包括动态路由、动态上游、动态证书、 A/B 测试、金丝雀发布(灰度发布)、蓝绿部署、限流限速、抵御恶意攻击、监控报警、服务可观测性、服务治理等。

- 服务监控运行
- CeSI是一个Web界面,用于从同一位置管理多个主管。
- CeSI is a web interface for managing multiple supervisors from the same place.
- CeSI是一个Web界面,用于从同一位置管理多个主管。
- Supervisor具有自己的Web UI,但是使用单独的UI很难管理多个Supervisor安装(如果您使用的是UI,则当然:)。CeSI旨在通过基于Supervisor的RPC接口创建集中式Web UI来解决此问题。
- https://github.com/Gamegos/cesi
- 一个更快,更好,更稳定的Redis桌面管理器,与Linux,Windows和Mac兼容。而且,加载大量密钥时,它不会崩溃。
- 软件设计哲学
- https://github.com/Go7hic/A-Philosophy-of-Software-Design
- https://go7hic.github.io/A-Philosophy-of-Software-Design/#/
- 有两种解决复杂性的通用方法,这两种方法都将在本书中进行讨论
- 第一种方法是通过使代码更简单和更明显来消除复杂性。例如,可以通过消除特殊情况或以一致的方式使用标识符来降低复杂性。
- 解决复杂性的第二种方法是封装它,以便程序员可以在系统上工作而不会立即暴露其所有复杂性。这种方法称为模块化设计。在模块化设计中,软件系统分为模块,例如面向对象语言的类。这些模块被设计为彼此相对独立,以便程序员可以在一个模块上工作而不必了解其他模块的细节。

- 模块深度是考虑成本与收益的一种方式。模块提供的好处是其功能。模块的成本(就系统复杂性而言)是其接口。模块的接口代表了模块强加给系统其余部分的复杂性:接口越小越简单,引入的复杂性就越小。最好的模块是那些收益最大,成本最低的模块。接口不错,但更多或更大的接口不一定更好!
- Subfinder是一个子域发现工具,可发现网站的有效子域。设计为被动框架,可用于漏洞赏金和安全的渗透测试。
- 如何不靠运气变得富有
2020-07-17
- go llvm
- 世界的未来是一个火药桶
- MEMS 扬声器
- 传统的扬声器采用电磁原理,电流变化引起线圈振动发声。MEMS 扬声器采用硅材料做成的压电薄膜,通过电压变化,引起薄膜的形变,扰动周围空气,由此产生声波。这种扬声器可以做成 4mm x 4mm 的大小,能够集成到耳机、耳戴式设备和助听器中。
- Nvidia 已经超过英特尔,成为美国市值最高的芯片公司。它没有自己的工厂,只是一家芯片设计公司,生产外包给台积电。英特尔有自己的工厂,但工艺不如台积电,业绩受到拖累。台积电不生产自己的芯片,只实现别人的设计,现在是世界市值最大半导体公司。
- 科学家发现第一种食用金属的细菌。该细菌利用金属锰将二氧化碳转化为有机物,产生热量。
- Babel 和 Yarn 作者推出的新工具,目标是将所有 JavaScript 开发工具集中在一个软件包里面,取代 ESLint、Babel、Webpack、Prettier 等。整个软件包没有任何依赖,即每一个功能都完全从零实现。
- https://romefrontend.dev
- Rome是一个linter,编译器,捆绑器,并且更多用于JavaScript,TypeScript,HTML,Markdown和CSS。在此处阅读有关我们的语言支持的更多信息。
- Rome统一了以前完全是独立工具的功能。大多数前端工具在职责和实施方面有很大的重叠。这些是一个单一的工具,很有价值。建立在共享基础之上,使我们能够提供处理代码,显示错误,并行化工作,缓存和配置的内聚体验。
- 支持40种以上语言的即用型OCR,包括中文,日文,韩文和泰文
- 使用Go和Web技术创建桌面应用程序
- https://github.com/wailsapp/wails
- 向Go程序提供Web界面的传统方法是通过内置的Web服务器。威尔提供了一种不同的方法:它可以将Go代码和Web前端包装到单个二进制文件中。提供的工具可通过处理项目创建,编译和捆绑使您轻松实现这一目标。您要做的就是发挥创意!
- Pest – Rust的快速、现代的解析器
- https://github.com/pest-parser/pest
- 优雅的解析器
- pest是用Rust编写的通用解析器,重点是可访问性,正确性和性能。它使用解析表达式语法(或PEG)作为输入,其本质上与正则表达式相似,但提供了解析复杂语言所需的增强表达能力。
- https://pest.rs/book/
- https://docs.rs/pest/2.1.3/pest/
- https://pest.rs/#editor
- https://github.com/Geal/nom
- nom是用Rust编写的解析器组合器库。其目标是提供在不影响速度或内存消耗的情况下构建安全解析器的工具。为此,它广泛使用了Rust 强大的键入和内存安全性来生成快速且正确的解析器,并提供函数,宏和特性来抽象大多数容易出错的管道。
- Rust分析器组合器框架
- 「演讲」平台价值观、Rust以及对系统软件的启示
C的平台价值观: Interoperability「互操性」 Performance「性能」 Portability「可移植性」 Simplicity「简单性」 C++的平台价值观: Expressiveness 「表达能力」 Performance 「性能」 Portability 「可移植性」 Scala的平台价值观: Composability「可组合性」 Expressiveness「表达能力」 Interoperability「互操性」 Integrity「完整性」 Robustness「健壮性」 Rust的平台价值观: Composability 「可组合性」 Expressiveness 「表达能力」 Extensibility 「可扩展性」 Interoperability 「互操性」 Integrity 「完整性」 Performance 「性能」 Rigor 「严谨性」 Robustness 「健壮性」 Safety 「安全性」 Security 「安全保障」 - https://rustcc.cn
- rust社区
- Rust日报
- 您的一站式静态网站引擎
- https://www.getzola.org/
- Zola是一个具有Sass编译,语法突出显示,目录和许多其他功能的单个可执行文件,这些功能通常需要设置开发环境或向您的站点添加一些JavaScript库。
- Zola将您的整个网站呈现为静态文件,从而使您无需担心管理服务器或数据库而无偿处理任何流量将变得微不足道。
- Zola的Gitbook主题
- https://github.com/getzola/book
- 基于Gitbook的主题,用于编写文档或书籍。
- 强大,易于使用的Rust模板引擎
- 受到Jinja2和Django模板的启发
- https://tera.netlify.app/
- https://docs.rs/tera/1.3.1/tera
- 基于Cranelift的rustc后端
- https://github.com/bjorn3/rustc_codegen_cranelift
- 该项目的目标是为基于Cranelift的锈编译器创建替代的代码源后端。这有可能缩短调试模式下的编译时间。如果您的项目不使用“尚不支持”中列出的任何内容,则可能工作正常。如果没有,请打开一个问题。
- 使用Cranelift的WebAssembly的独立JIT风格的运行时
- https://github.com/bytecodealliance/wasmtime
- WebAssembly的独立运行时
- https://bytecodealliance.github.io/wasmtime/introduction.html
- 由Wasmtime支持的WebAssembly运行时
- https://github.com/bytecodealliance/wasmtime-go
- 这个Go库使用CGO来消费用Rust编写的Wasmtime项目的C API 。Wasmtime的预编译二进制文件已签入带标记的发行版的此存储库中,因此您不必在本地安装Wasmtime,但这意味着该项目当前仅在Linux x86_64,macOS x86_64和Windows x86_64上运行。在其他平台上构建将需要安排构建Wasmtime并使用CGO_*env var正确编译。
- 构建自己的x工具
- rust shell
- https://github.com/psinghal20/rush
- 开发了一个实验外壳,以获取一些有关Rust和unix流程管理的经验
- 受Elm启发的Rust跨平台GUI库
- https://github.com/hecrj/
- Rust的跨平台GUI库专注于简单性和类型安全性。
- Rust库轻松创建出色的游戏
- https://github.com/ggez/ggez
- 更具体地说,ggez是一种轻量级的跨平台游戏框架,用于以最小的摩擦力制作2D游戏。它旨在基于LÖVE 游戏框架(的原始版本)实现API 。这意味着它包含基本的和便携式的2D绘图,声音,资源加载和事件处理,但是更好的细节和性能特征可能与LÖVE不同。
- 数据优先的Rust本机UI设计工具包
- https://github.com/linebender/druid
- Druid是一个实验性的Rust-native UI工具箱。其主要目标是提供完善的用户体验。实现此目标的因素很多,包括性能,丰富的交互调色板(因此有一个小部件库来支持它们)以及与本机平台的良好配合。有关更多详细信息,请参见目标部分。
- https://linebender.org/druid/
- 改良版Google的跳转一致性哈希
- https://github.com/edwingeng/doublejump
- 这是经过改进的Google的跳转一致性哈希。它克服了原始实现的缺点-无法删除节点。这是doublejump背后的主要思想。
2020-07-18
- 越是苦的人,在物质上难为自己的同时,越是容易用情感难为别人来换取一些平衡。
- Linux系统优化程序和监视
作者:百里求一
出处:http://www.cnblogs.com/bergus/
我的语雀: https://www.yuque.com/barry.bai
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。


浙公网安备 33010602011771号