

捕蛇者说
pythonhunter
《捕蛇者说》是一档以编程为主题的聊天节目。我们会聊聊编程、程序员和 Python。
Episodes
Mentioned books

Jun 30, 2024 • 57min
Ep 47. 和 Yuchen 聊聊 Cloudflare 的新框架 Pingora
本期节目我们请到了继续和 Yuchen 聊聊 Cloudflare,以及他主导并开源网络框架 Pingora
Pingora 是一个使用 Rust 开发的框架,可以让开发人员在上面实现自定义服务器。Pingora 的开发是基于 Cloudflare 多年的经验和需求,他们发现在代理中需要大量的业务逻辑代码而不是配置,并且用 Lua 或编写配置也不理想。此外,我们讨论了 Pingora 的开发过程中涉及的技术决策和挑战,以及 Cloudflare 的文化和招聘情况。
嘉宾
Yuchen
主播
laixintao
NadeshikoManju
laike9m
时间点
00:03 Cloudflare Pingora 项目开发背后的故事与原因
04:53 以 Lua 嵌入 Nginx 的 openresty 为基础的强大编程工具
08:47 Lua 的特点和局限性分析
13:03 Nginx 的 C 开发和 Lua 维护的困难性及 ARM 上的问题
16:10 Indrax 架构的问题和需要解决的挑战
22:25 大家决定用 Rust 语言重新开发的决策过程
24:47 对于使用 Rust 语言开发的经验和公司中的实践
27:07 Rust 语言的开发和 API 设计
30:32 流量迁移和切换效果评估
32:53 开发速度改进和问题处理的讨论
37:15 Pingora 框架的开源故事及其 API 设计和扩展性
40:36 关于开源的讨论和决策过程,Rust 语言的优势以及担忧的原因
44:22 Nginx 的发展历程以及与 F5 的关系变动
46:06 Pingora 开源项目及其童话般的发展故事
50:18 Cloudflare 文化和招聘情况讨论
53:40 Cloudflare:科技领域无可匹敌的压倒性存在
链接
Pingora
Nginx
OpenResty
Lua
F5 Completes Acquisition of NGINX
爱发电上赞助

May 16, 2024 • 59min
Ep 46. 你知道『赛博佛祖』Cloudflare 吗?
本期节目我们请到了 Cloudflare 的 Yuchen,和大家聊了聊 Cloudflare 这家神奇的公司,以及它为什么被称为『赛博佛祖』。
嘉宾
Yuchen Wu
时间点
00:01:20 Cloudflare 这家公司主要做什么,有哪些服务
00:22:00 Cloudflare 的营收从哪里来
00:26:42 为什么 Cloudflare 愿意去提供各种免费服务(laixintao tweet)
00:40:10 在 Cloudflare 工作的体验
链接
Cloudflare
The Cloudflare Blog
Pingora - A library for building fast, reliable and evolvable network services.
Cloudflare Workers
Cloudflare bot solutions
Cloudflare IP addresses
服务器被攻击,上了 CDN 但源站 IP 还是会被很快知道,求问可能是哪个环节出了问题?
Cloudflare Tunnel
Zero Trust security | What is a Zero Trust network?
Backblaze
Cloudflare Post Mortem
How to execute an object file: Part 1
爱发电上赞助

Apr 15, 2024 • 1h 58min
大串台之一起聊聊新加坡
laike9m 来到了新加坡!我们和 二分电台 的 2BAB 和 代码之外 的勾股在现场录制了一起节目,和 laike9m 畅聊了有关新加坡和加州的方方面面。
音频处理:西市独柳工作室 https://xishiduliu.com/
如果喜欢我们的节目,欢迎通过爱发电打赏支持:https://afdian.net/@pythonhunter
时间线:
00:25 自我介绍
03:00 天气开场
06:57 新加坡简单轻松的感觉
11:36 新加坡和加州基础教育
21:56 新加坡和加州政府网站和公共服务
32:59 新加坡和加州的饮食
47:04 新加坡的家长式政府:HDB、民族大融合
57:06 新加坡的生活成本
1:06:00 新加坡的工作机会
1:11:45 美国和加州的看病区别
1:18:51 新加坡的休闲娱乐生活
1:35:55 新加坡对健康的重视
1:44:15 新加坡的技术氛围
1:52:14 总结时间
参考链接:
PISA 2022 results https://www.oecd.org/publication/pisa-2022-results/
Understanding Singapore Math https://search.arc.net/x0nQESzb6Ze9vYePie4E
新加坡副总理尚达曼打脸BBC主持人四十分钟全文 https://www.youtube.com/watch?v=brAUYIlpZxs
李光耀观天下 https://m.douban.com/book/subject/26413154/
饮料健康等级系统 Measures for Nutri-Grade Beverages https://hpb.gov.sg/healthy-living/food-beverage/nutri-grade (上海也试行饮料营养分级了:https://finance.sina.com.cn/jjxw/2024-04-09/doc-inarfrzq6245817.shtml )
运动换取代金券的 App:Lumihealth https://www.lumihealth.sg/
Stranger Soccer https://www.strangersoccer.com/
National Parks https://www.nparks.gov.sg/
Visa Technology Traineeship Program https://www.visa.com.sg/careers/visa-tech-traineeship-program.html
二分电台:https://binary.2bab.me/
代码之外:https://bento.me/beyondcode
音频处理:西市独柳工作室 ( https://xishiduliu.com/ )
爱发电上赞助

Jan 10, 2024 • 1h 5min
Ep 45. 与 Tualatrix 聊聊独立开发的近况
本期节目中,图拉鼎讲述了最近几年做独立开发的经历,良渚文化村吸引独立开发者聚集的原因,以及疯狂星期四的起源和发展。我们着重聊了聊为什么他会想到注册一个美国公司,以及所需的资质和流程。还聊到了微软/Google 对开发者的支持,以及独立创造者在产品开发中的作用和优势。
嘉宾
图拉鼎
主播
laixintao
Adam Wen
laike9m
章节
00:15 近况
04:50 良渚文化村和玉鸟集
12:26 疯狂星期四的开始
26:08 为什么会想到注册美国公司,以及探索苹果生态之外的可能性
43:40 微软对开发者的支持
52:35 如何合法合规地接受用户付款
59:58 推荐环节
01:02:10 独立开发&小团队的作品为什么更好
链接
良渚玉鸟集:城市聚落的再创造
《一个独立创造者的五年》
firstbase: Launch your US business from anywhere, in minutes.
Lemon Squeezy: All-in-one platform for running your SaaS business
Microsoft for Startups
Google for Startups
爱发电上赞助

Jan 2, 2024 • 58min
Ep 44. 与 Tualatrix 聊聊独立开发使用的技术栈
本期节目中,图拉鼎分享了他的独立开发经验。从 Ubuntu Tweak 到 MarkMark,他鼓励更多人加入独立开发行列。我们聊到为什么他和其它一些独立开发者不约而同地选择 Python 作为后端语言。图拉鼎还分享了获取技术信息及避免踩坑的方法。
嘉宾
图拉鼎
主播
laixintao
Adam Wen
laike9m
章节
00:00:30 嘉宾 Tualatrix 自我介绍
00:02:10 Tualatrix 的作品介绍
00:05:08 主播们在使用的 Tualatrix 开发的作品
00:13:30 如何接触到 Python 并入门 Django
00:21:41 使用 Python 开发自己的内购系统
00:36:41 内购系统所面临的问题
00:40:57 原生应用使用 hotpatch 风险与挑战
00:43:45 Tualatrix 是如何做技术选型的
00:52:25 个人开发者如何适用自己的技术信息
00:57:07 Ending 结尾
链接
Ubuntu Tweak
Manico
PasteNow
One Switch
Django
htmx
爱发电上赞助

Nov 15, 2023 • 1h 15min
Ep 43. 主播家的猫
这期主播们聊了聊猫
链接
E765.爱猫失踪后,我只身一人揭开屠猫黑色产业链
小白的猫
Manjusaka 的猫
laike9m 的猫
Adam 的猫
爱发电上赞助

Oct 15, 2023 • 1h 36min
Ep 42. 和 Wey Gu 聊聊图数据库与开源公司工作
如果喜欢我们的节目,欢迎通过爱发电打赏支持:https://afdian.net/@pythonhunter
嘉宾
Wey Gu
主播
laike9m
laixintao
Ada Wen
时间轴
00:00:13 开场
00:00:27 嘉宾自我介绍
00:01:10 话题:图、图数据库介绍
00:06:30 提问:知识图谱与外卖路径规划
00:07:51 提问补充:知识图谱能不能当做传统的图数据库来用
00:08:53 话题:微信用 NebulaGraph 做存储的例子
00:10:32 提问:在好友关系查询上传统 SQL 与图数据库的区别
00:11:56 提问补充:NebulaGraph 两点之间边的数量增加,查询成本以什么量级增加增加
00:13:59 提问:不同 Graph Database(图数据库) 的查询语言是否存在一套标准类似 SQL
00:19:21 提问:查询是直接写语句还是有 SDK,以及结果格式是什么样的
00:20:21 提问:使用不同的图数据库针对同一个查询结果返回的数据结构是不是相同的
00:23:13 提问:业界对于 GQL 的支持程度如何
00:25:43 话题:图数据库与大模型的关系
00:33:57 提问:图数据库是如何辅助大模型的
00:39:00 提问:图数据库与大模型的结合需要用户有怎样的基础
00:41:30 延展:知识图谱的建立和使用都可以与大模型结合
00:43:50 延展:从 图数据库驱动的基础设施运维示例 延展
00:53:18 延展:信涛的 Prometheus 之旅
00:53:45 话题:在开源公司的工作体验
01:18:18 话题:古老师的 开源面对面 播客
01:26:00 固定话题:好物分享
01:35:33 结束语
相关链接
00:01:32 柯尼斯堡七桥问题 维基百科 | 百度百科
00:02:39 neo4j
00:03:28 RDF(Resource Description Framework | 资源描述框架) 维基百科 | 百度百科
00:03:56 知识图谱 维基百科 | 百度百科
00:06:49 GIS(Geographic Information System | 地理信息系统) 维基百科 | 百度百科
00:07:01 NebulaGraph
00:08:36 TAO: The power of the graph
00:13:09 Redis geospatial
00:16:52 GQL 维基百科
00:17:02 Cypher Query Language
00:17:39 Gremlin Home Page | 维基百科
00:17:56 nGQL | nGQL 简明教程
00:18:22 SPARQL
00:29:01 往期节目关联:Ep 39. 和 Alex 聊聊向量数据库与职业规划
00:35:02 古老师提到的 ref: 一 | 二
00:35:27 langchain | llama_index
00:43:50 图数据库驱动的基础设施运维示例
00:53:18 Prometheus
00:56:33 Teahour | Teahour#90: 和 PingCAP CTO 畅谈数据库和编程语言
01:01:13 信涛的 Awesome Commandline 录像和资料
01:18:18 开源面对面
01:26:18 Cursor: The AI-first Code Editor
01:30:37 Copilot | Copilot for CLI
01:34:08 信涛分享的三门 udemy 课程一 Building Your English Brain
01:34:08 信涛分享的三门 udemy 课程二 Getting Started with Wireshark
01:34:08 信涛分享的三门 udemy 课程三 Discovering Backend Bottlenecks
01:35:00 温老师的分享
爱发电上赞助

Jul 25, 2023 • 1h 34min
[特别篇05] Manjusaka 和 laike9m 串台「代码之外」
本期是 laike9m 和 Manjusaka 做客「代码之外」播客。我们聊了各种感兴趣的话题。
代码之外 Beyond Code 是一档由 GeekPlux 和 Randy 共同主持的程序员闲聊播客节目。
时间点
01:27 暖场话题,Meta Threads
03:24 《捕蛇者说》的起源
18:17 遇到过的一些负评
20:14 比较满意哪一集
32:06 manjusaka 做公益引争论
42:02 保存数字遗产
01:10:56 和「名人」的交集
01:14:43 清华往事
01:26:48 如何看待别人给的经验建议
爱发电上赞助

Jul 18, 2023 • 1h 13min
Ep 41. 和 Penguin 聊聊 CPython 优化和大厂编译器组的工作
本期前半段内容(CPython 优化)较为硬核,如果你想直接听后半段(大厂编译器组的工作),可以直接跳到 00:38:50
嘉宾
Penguin
主播
laike9m
Manjusaka
链接
播客中提到的两个优化:
Add return const instruction #101632 - python/cpython
bpo-47067: Add vectorcall for gaobject #31996
Faster CPython
CPython 特化指令
PEP 659 – Specializing Adaptive Interpreter
码农高天:Faster CPython的重要力量——Specialized Instruction
十分钟魔法练习
Apache TVM
太极图形
播客封面来自Anime Girls Holding Programming Books
爱发电上赞助

May 13, 2023 • 1h 17min
Ep 40. Rust 和 PyO3:让 Python 再次伟大 🦀 ❤️ 🐍
嘉宾
Messense
主播
laixintao
小白
Adam Wen
laike9m
链接
PyO3
PyO3 有哪些应用?
polars: Fast multi-threaded DataFrame library in Rust | Python | Node.js.
pydantic-core: Core validation logic for pydantic written in Rust.
cryptography: Python cryptography library with some functionality in Rust.
orjson: Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy
PyO3 前身:rust-cpython
Maturin: Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages
What Are Python Wheels and Why Should You Care?
PEP 517 – A build-system independent format for source trees
Ruff: An extremely fast Python linter, written in Rust.
typos: Source code spell checker
ChatGPT 写的 Rust 调用 Python C-API 的例子
use std::os::raw::{c_char, c_int};
use std::ffi::CString;
use libc::{c_double, c_void};
#[link(name = "python3.8")]
extern "C" {
fn Py_Initialize();
fn Py_Finalize();
fn Py_BuildValue(format: *const c_char, ...) -> *mut c_void;
}
fn main() {
unsafe {
// 初始化 Python 解释器
Py_Initialize();
// 构建一个 Python 元组对象,并打印它
let x = 1.23 as c_double;
let y = 4.56 as c_double;
let format = CString::new("dd").unwrap().as_ptr();
let result = Py_BuildValue(format, x, y);
let s = CString::from_raw(result as *mut c_char).into_string().unwrap();
println!("{}", s);
// 关闭 Python 解释器
Py_Finalize();
}
}
pyo3-ffi: Python-API bindings for the PyO3 ecosystem
在 PyO3 里通过 allow_threads 关掉 Python GIL
pybind11 — Seamless operability between C++11 and Python
Cython
CFFI: C Foreign Function Interface for Python. Interact with almost any C code from Python, based on C-like declarations that you can often copy-paste from header files or documentation.
zig cc: a Powerful Drop-In Replacement for GCC/Clang
wechatpy: 微信公众平台第三方 Python SDK
OrbStack: Fast, light, simple Docker & Linux on macOS
FancyWM - a dynamic tiling window manager for Windows 10/11
CSAPP: Computer Systems: A Programmer's Perspective
APUE: Advanced Programming in the UNIX® Environment
提到的读书撕书的灵感来自于:李敖先生
吴恩达 prompt engineering 课程:
ChatGPT Prompt Engineering for Developers
Kiwi 浏览器
爱发电上赞助


