GopherDaily

GopherDaily

2024-02-12

每日一谚:Don't Return -1 or nil to Indicate Error


Go技术生态

2024年2月TIOBE编程语言排行榜发布,Go跻身top10,排名第八位
刷新历史最好排名

Go 1.22 的go/types别名类型显示了API兼容性的挑战
这篇博文讨论了 Go 中 API 兼容性的挑战,特别是在 Go 1.22 版本中引入“别名”类型,这可能会破坏现有的类型开关,这些开关还没有准备好处理它。

Go 1.22’s HTTP Package Updates

A Guide to Avoiding Goroutine Leaks in Go Programs
The article "A Guide to Avoiding Goroutineleaks in Go Programs" by poloxue on Medium provides a guide on how to prevent goroutine leaks in Go programs, highlighting the issue of continuous creation of new goroutines without releasing them, which often becomes apparent after several days or even longer.

我不评论我的代码的真正原因
作者 Pen Magnet 分享了他作为程序员的旅程,从一个焦虑和懒惰的地方开始,在那里他匆忙地编写编程语句以赶上最后期限,但后来了解到建模和对象设计的重要性。

云原生技术

简短阅读:夏令时有问题,将UTC用于后端系统
Benjamin Cane是一位开发人员和开源贡献者,他认为后端系统应该使用统一时间(UTC)标准而不是夏令时,因为它是所有类型的系统都理解的标准,并且不会随着夏令时而调整。

Meta 喜欢 Python
Meta 是一家开发开源软件的公司,它为 Python 3.12 贡献了几个新功能,包括自定义 JIT、Immortal Object 对象、对类型系统的改进以及更快的理解。

Rust 中的错误管理,以及支持它的库
该文档讨论了 Rust 中的错误管理,重点介绍了它对函数式编程中的“任一”单子、“结果”枚举、“错误”特征和“上下文”特征的使用,它们允许错误和结果的传播。

Rust 结束了。
作者 SwitchUpCB 博士分享了他停止在他的软件中使用 Rust 的决定,因为 Rust 基金会表示他不能再使用 Crab,并提到作者的软件现在是用 Go 编写的。

从 Podman 到 OpenShift:以红帽的方式探索 Kubernetes
Joseph Whiteaker 分享了他在探索基于红帽的 Kubernetes 堆栈(包括 Podman Desktop、Quarkus 和 Kubernetes Local)时的经验和见解,重点介绍了每个工具的独特功能和用户友好型设计。

AI

生成式 AI 将改变软件开发的 10 种方式
本文讨论了生成式人工智能(genAI)在软件开发中的潜力,认为它将自动化和增强编码,而不是取代编码,从而加速生产力和产出,并将影响软件开发周期(SDLC)和DevSecOps的发展。

为什么 AI 对许多设计师来说感觉很混乱?
艾伦·托马斯(Alen Thomas)讨论了设计师对人工智能(AI)潜在影响的担忧,认为虽然它可能不会取代工作,但它可以提高工作效率并提供有价值的见解,但它也需要人工审查和编辑。

流行工具与项目

AdguardTeam/AdGuardHome
网络范围的广告和跟踪器阻止DNS服务器

danielgtaylor/huma
Huma REST/HTTP API 框架 Golang with OpenAPI 3

filebrowser/filebrowser
📂 Web 文件浏览器

ava-labs/avalanchego
Avalanche 节点的 Go 实现。

hyperledger/fabric
Hyperledger Fabric 是一个企业级许可分布式账本框架,用于开发解决方案和应用程序。其模块化和多功能设计可满足广泛的行业用例。它提供了一种独特的共识方法,可在保护隐私的同时实现大规模性能。

tinygo-org/tinygo
为小地方编译器。微控制器、WebAssembly (WASM/WASI) 和命令行工具。基于 LLVM。

apple/pkl-go-examples
在 Go 应用程序中使用 Pkl 的示例

apple/pkl-go
Go 编程语言的 Pkl 绑定

authelia/authelia
适用于 Web 应用的单一登录多重门户

a-h/templ
一种在 Go 中编写 HTML 用户界面的语言。

junegunn/fzf
🌸 命令行模糊查找器

SagerNet/sing-box
通用代理平台

XTLS/Xray-core
X射线,穿透一切。也是最好的 v2ray-core,支持 XTLS。完全兼容的配置。

IceWhaleTech/CasaOS
CasaOS - 一个简单、易用、优雅的开源个人云系统。

v2fly/v2ray-core
一个用于构建代理以绕过网络限制的平台。

syncthing/syncthing
开源连续文件同步

ollama/ollama
在本地启动并运行 Llama 2、Mistral 和其他大型语言模型。

apache/incubator-devlake
Apache DevLake 是一个开源开发数据平台,用于从 DevOps 工具中摄取、分析和可视化零散数据,从而提取卓越工程、开发人员体验和社区发展的见解。

ahmetb/kubectx
在 kubectl 中更快地在集群和命名空间之间切换

navidrome/navidrome
🎧☁️ 与 Subsonic/Airsonic 兼容的现代音乐服务器和流媒体

evcc-io/evcc
Sonne tanken ☀️🚘

ory/kratos
下一代身份服务器(想想 Auth0、Okta、Firebase),具有 Ory 强化身份验证、PassKeys、MFA、FIDO2、TOTP、WebAuthn、配置文件管理、身份架构、社交登录、注册、帐户恢复、无密码。Golang、无头、仅限 API - 无需模板化或主题化。可作为云服务使用。

google/go-github
用于访问 GitHub v3 API 的 Go 库

OffchainLabs/arbitrum-classic
为快速、私密、分散的应用程序提供支持

wailsapp/wails
使用 Go 创建美观的应用程序


编辑:Tony Bai

编辑主页:tonybai.com

GopherDaily主页:gopherdaily.tonybai.com

GopherDaily归档:gopherdaily.tonybai.com/more

GopherDaily项目:github.com/bigwhite/gopherdaily

订阅GopherDaily

取消订阅GopherDaily

另一个邮件列表:https://gopher-daily.com

Copyright 2023 GopherDaily