podcast
details
.com
Print
Share
Look for any podcast host, guest or anyone
Search
Showing episodes and shows of
TalkGoFM
Shows
Go 夜聊
第 7 期:依赖与模块
# 第 7 期:依赖与模块主持:[杨文](https://maiyang.me),[欧长坤](https://changkun.de)嘉宾:[盛傲飞](https://aofeisheng.com)本期摘要:这是 Go 夜聊的第七期节目,我们和 goproxy.cn 的作者在 Go 1.17 发布时聊了聊在 Go 语言中的依赖管理、模块等相关的机制。Go 语言中的 Modules 走到今天这一步经历了哪些波折?看似在其他语言里早已攻克的代码依赖管理,在 Go 语言的情景下,又有哪些不为人知的努力?## 时间线- 00:00 开场白- 01:06 接触 Go 语言的契机- 02:57 Beego 等一系列 Web 框架的对比- 04:37 自己动手写 Web 框架- 06:33 Go Modules 之前的依赖管理- 16:12 Monorepo 代码管理的优劣- 22:24 "臭名昭著" 的 GOPATH 和 vendor- 28:36 dep 的风波- 37:46 "独裁式" 管理风格下的需求工程- 43:52 进入 Go Module 时代- 46:47 Go Modules 的基本原理- 52:40 godoc 和 pkg.go.dev- 54:57 从 golang.org 合并到 go.dev 域名- 66:22 Go Modules 的最小版本选择算法 MVS- 70:27 环境变量 GOPRIVATE- 72:25 模块的懒加载- 77:36 模块别名机制- 82:10 GOPATH 的废除与 Go 1 兼容性保证- 84:43 Go Workspace 工作区- 86:17 构建 goproxy.cn 的经历- 89:57 搭建代理的难点及其与镜像站的区别- 96:42 七牛云接管 goproxy.cn 的运营## 相关链接- [谢大 astaxie 写的 Beego](https://github.com/beego/beego)- [知名 Web 框架 Gin](https://gi...
2022-03-17
1h 45
Go 夜聊
第 6 期:Go 语言的编译器
# 第 6 期:Go 语言的编译器 主持:[杨文](https://maiyang.me),[欧长坤](https://changkun.de) 嘉宾:[史斌](https://github.com/benshi001) 本期摘要:这是 Go 夜聊的第六期节目,这期我们有幸请到了目前在 Go 语言仓库贡献排行榜上前全球前五十的贡献者——史斌,并和他一起聊了聊编译器相关的技术和相关行业的一些未来。Go 语言的编译器有什么特点?还有哪些可以改进的空间?从事芯片和编译技术相关的工作又有哪些挑战? ## 时间线 - 00:00 开场 - 01:00 接触 Go 语言的起因 - 03:31 Go 语言在芯片行业的现状 - 04:57 成为中国 Go 语言贡献者排名第一的经历 - 12:35 加入 Go 团队的 GitHub 组织 - 19:09 Go 语言中国贡献者俱乐部的成立过程 - 21:12 Go 语言在芯片行业的困境 - 28:08 基于 SSA 的 Go 编译器 - 33:52 现阶段编译器的改进空间 - 36:53 基于寄存器的调用规约 - 40:08 gccgo 和 gollvm - 44:02 编译技术和行业的未来 - 49:13 推荐 - 51:48 尾声 ## 相关链接 - [乘法指令生成错误](https://golang.org/issue/19141) - [寄存器索引 LOAD/STORE](https://golang.org/issue/24907) - [Go 1 Benchmark](https://github.com/golang/go/tree/master/test/bench/go1) - [Go 团队在 GitHub 的组织](https://github.com/orgs/golang/people) - [前 Go 团队成员 Brad Fitzpartrick](https://github.com/bradfitz) - [Go 团队成员 Cherry Zhang](https://github.com/cherrymui) - [Go 语言贡献者李保坤](https://github.com/oiooj) - [Go 语言贡献者蒙卓](https://github.com/mengzhuo) - [Go 语言中国贡献者俱乐部](https://gol...
2021-08-23
53 min
Go 夜聊
第 5 期:Go 语言发展的近况 (下)
本期摘要:这是 Go 夜聊的第五期节目,这次我们将延续上一期的话题讨论 Go 语言的一些发展近况。本期的话题围绕即将带来的涉及运行时机制和泛型的重大变化展开。为什么 Go 语言运行时几乎每个版本都能带来大量性能提升?Go 语言规范又即将引来哪些重大的变动? ## 时间线 - 00:00 开场 - 00:56 运行时内存回收机制的变化 - 06:34 运行时的监控机制 - 09:56 基于寄存器的调用规约 - 17:06 全新的 GC 调步器 - 22:32 语言内存模型的完善 - 23:58 两位主播对支持泛型的看法 - 28:36 为什么 Go 语言十年之后才开始引入泛型 - 32:32 Go 1 和 Go 2 对开发者来说意味着什么 - 36:58 Go 语言的发版困境 - 39:53 泛型的起源 - 41:54 Go 语言泛型语法设计上的争议 - 45:32 类型参数与类型集作为泛型的实现 - 51:16 Go 团队的内部矛盾 - 59:10 尾声 ## 🔗 相关链接 - MADV_FREE 更改为 MADV_DONTNEED (1.16), [#23687](https://golang.org/issue/23687), [#42330](https://golang.org/issue/42330) - [全新的 runtime/metrics (1.16)](https://pkg.go.dev/runtime/metrics) - [基于寄存器的调用规约 (1.17)](https://golang.org/design/40724-register-calling) - 全新的 GC 调步器 (1.18) [#44167](https://golang.org/issue/44167), [#44309](https://golang.org/issue/44309), [#45894](https://golang.org/issue/45894) - [Russ Cox 有关内存模型的 3 篇文章](https://research.swtch.com/mm) - [内存模型的完善 (1.18)](https://golang.org/issue/47141) - [书籍《C++ 语言的设计和演化》The Design and Evolution of C++](https://book.douban.com/subject/1456860/) - [泛型语言规范的变更 (1.18)](https://go-review.googlesource.co
2021-08-06
1h 01
Go 夜聊
第 4 期:Go 语言发展的近况 (上)
- 主持: [杨文](https://maiyang.me), [欧长坤](https://changkun.de) 本期摘要:这是 Go 夜聊的第四期节目,我们成功的从月更节目转型为(半)年更节目,自然也就错过了很多跟 Go 语言相关的变化(1.16-1.18)。本期的话题围绕 Go 语言的发展近况展开。 那么这么长的时间里 Go 语言团队有哪些公开活动?Go 语言和相关生态又有哪些令人兴奋的新特性? ## 时间线 00:00 开场 00:45 主播的一些近况 02:46 Go 团队的静默期 08:05 在 StackOverflow 上的 Go Collective 计划 11:57 Go Modules 相关的一些变化 16:25 构建约束与编译器注记符的统一 20:43 全新链接器背后的故事 23:22 其他工具链相关的大变化 24:02 Go 在 ARM 架构上的支持 29:27 标准库 embed 包及其相关的一些变化 34:22 包名称的命名方式 37:36 runtime/cgo 包下的全新 API 42:20 泛型相关的新特性 46:22 Go 语言内存模型的完善 50:44 尾声 ## 🔗 相关链接 - [Russ Cox 的 quiet weeks 公开邮件](https://groups.google.com/g/golang-dev/c/onqurcX6pV8/m/jJ9aryiEBAAJ) - [Bus Factor](https://en.wikipedia.org/wiki/Bus_factor) - [书籍《Working in Public》](https://book.douban.com/subject/35128340/) - [StackOverflow Go Collective](https://stackoverflow.com/collectives/go) - [go get 到 go install (1.16) ](https://golang.org/issue/40276) - [//go:build 构建约束 (1.16,1.17,1.18)](https://golang.org/design/draft-gobuild) - [全新的链接器 (1.16)](https://golang.org/s/better-linker) - [模块懒加载 (1.17)](https://golang.org/design/36460-lazy-m...
2021-08-01
51 min
Go 夜聊
#3 漫谈写作和个人成长
# 第 3 期:漫谈写作和个人成长 - 主持: [杨文](https://maiyang.me), [欧长坤](https://changkun.de) - 嘉宾: [曹春晖](https://xargin.com), [饶全成](https://qcrao.com) 本期摘要:这是 Go 夜聊的第 3 期节目,这期节目嘉宾请到了我们在 [Go 夜读](https://talkgo.org) 的老朋友们曹春晖(曹大)、饶全成(饶大),一起聊了聊他们与 Go 相关的成长经历。本期节目主要包括了曹大编写《Go 语言高级编程》背后的故事、做过的开源项目、Go 在企业面试、国内大环境中的现状,以及如何学习成长等话题。 ## 时间线 - 00:15 开场 - 00:42 饶大和曹大的自我介绍 - 03:10 创作《Go 语言高级编程》的幕后 - 11:21 聊聊博客和写作 - 22:48 cch123/elasticsql 开源项目的由来 - 27:17 成为 Go Contributor 的过程 - 40:40 聊聊面试 - 62:03 Go 在国内的现状 - 65:50 工程师最重要的学习方法 - 67:43 科学的搜索方法 - 81:15 聊聊玩过的那些游戏 - 88:00 平常听哪些播客 - 89:02 推荐环节 ## 🔗 相关链接 - [Go 夜读第 33 期:Go defer 和逃逸分析](https://talkgo.org/t/topic/52/2) - [Go 夜读第 34 期:plan 9 汇编入门,带你打通应用和底层](https://talkgo.org/t/topic/53) - [Go 夜读第 44 期:Go map 源码阅读分析](https://talkgo.org/t/topic/63) - [Go 夜读第 78 期:Go Scheduler 源码阅读](https://talkgo.org/t/topic/97) - [kata-containers](https://github.com/kata-containers/kata-containers) - [cch123/elasticsql](https://github.com/cch123/elasticsql) - [crypto/tls: pool Conn's outBuf to reduce memory cost of idle connections](https://golang.org/cl/267957...
2021-01-07
1h 34
Go 夜聊
第 2 期:成为 Go 贡献者
- 主持: [欧长坤](https://changkun.de), [杨文](https://maiyang.me/) - 嘉宾: [蒙卓](https://mzh.io) 本期摘要:这是 Go 夜聊的第二期节目,本期的话题围绕成为 Go 语言贡献者展开。 为此,我们非常荣幸请到了~~可能是~~目前国内最活跃的 Go 语言贡献者~~之一~~:蒙卓(Max)。 那么 Max 为什么能够如此活跃在 Go 的贡献榜上?他是怎么一步步成长为 MIPS 维护者的? 维护的过程中遇到过那些问题?作为贡献者,与 Go 团队打交道又有哪些奇闻趣事? ## 时间线 - 00:56 谁是蒙卓(Max) - 01:20 在华为从事 Go 开发 - 07:33 对播客的了解和看法 - 10:05 2019 年 GopherCon 参会体验 - 12:42 接触 Go 语言的契机 - 15:00 Go 最吸引人的地方 - 19:38 从游戏后端到 Go 开发 - 23:23 给 Go 贡献代码“难度” - 30:03 与 Go 团队打交道 - 38:20 排定 Go 开发工作的优先级 - 39:28 "不能稳定复现的才叫 BUG,否则只能叫问题" - 48:48 Google 对 Go 社区的管理 - 52:24 Go Build Coordinator - 55:53 对 Go 未来的憧憬和担忧 - 58:18 对 Go 语言支持泛型的看法 - 59:59 进一步展开对编程语言发展的讨论 - 64:28 Go 中国贡献者俱乐部 - 67:31 成为 Go Contributor 的福利 - 70:25 工作流及日常工具 - 73:13 推荐环节 ## 🔗 相关链接 - [Go 语言贡献指南](https://golang.org/doc/contribute.html) - [Ansible](https://github.com/ansible/ansible) - [Kubernetes](https://kubernetes.io/) - [HiKey 960 开发板](https://www.96boards.org/product/hikey960/) - [Go 语言创始人之一:Ian Lance Taylor](https://github.com/ianlancetaylor) ...
2020-12-21
1h 20
Go 夜聊
第 1 期:参加 GopherCon 2020
主持人:杨文, 欧长坤 本期摘要:这是 Go 夜聊的第一期节目,我们选择了一个跟全球 Go 语言开发者都有关系的话题,就是刚刚结束的 GopherCon。在疫情的影响下,原本计划在 6 月份举办的大会如今推迟到了 11 月,由原本的线下也更改为了线上。那么参加这种大会有什么特别之处?参加这个大会会有哪些潜在的收益?从大会里又有那些有关 Go 语言的相关"小道"消息? ## 时间线 - 00:45 GopherCon 的介绍和起源 - 04:08 参会的费用、形式及日程安排 - 08:40 在全球范围内进行线上大会的交流工具 - 10:54 大会的赞助商和他们的潜在动机 - 17:42 参加 GopherCon 大会的原因 - 19:33 除了 GopherCon 之外的其他的参会经历 - 23:31 各式各样的 GopherCon 和 Meetup - 29:00 Go 语言编译器和运行时的领头人 Austin Clements - 36:05 运行时异步抢占的设计由来 - 39:21 有关添加泛型支持的各类小道消息 - 42:10 值回票价的 QA 环节和 Go 运行时未来的发展方向 - 54:05 其他的一些参会环节 - 58:54 推荐环节 ## 相关链接 - GopherCon - Rob Pike 参加的 The Changelog 播客第 100 期节目 - 第一届 GopherCon 大会 Rob Pike 的开题演讲 - CppCon - Discord - PyConWeb - Russ Cox 表达举办全球范围内的贡献者峰会的公开邮件 - Austin Clements 的 GitHub - Go 运行时调度器的作者 Dmitry Vyukov 的 GitHub - Austin Clements: Pardon the Interruption: Loop Preemption in Go 1.14 - Go: A Documentary - Robert Griesemer: Typing [Generic] Go - Go 1 的兼容性保证 - Go 1.16 的 io/fs - Go 1.16 的 embedded files - Go Modules Reference - Profile Guided Optimization - Object Lifetime Prediction in Java - Tracing garbage collection - Immix: a mark-region garbage collector with space efficiency, fast collection, and mutator performance - google/tcmalloc - Register-based calling Convention - Jonathan Amsterdam: Working with Errors - image 包的作者 Nigel Tao
2020-12-04
1h 02
Go 夜聊
第 0 期:不如来录一档关于 Go 语言的播客吧?
开场自我介绍 为什么想要做夜聊? 内容的选取 对夜聊的期许 推荐 如果你觉得「Go 夜聊」做的还不错,欢迎你推荐给身边的朋友。如果你对我们有任何意见或建议,请给我们来信。我们的邮箱 hi@talkgo.fm。 也欢迎你加入我们的听众电报群 https://t.me/talkgofm
2020-01-07
45 min