捕蛇者说

pythonhunter

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

  1. 9 DE AGO.

    Ep 56. 对话 Hawstein:从独立开发,到追寻人生的意义

    本期节目,我们请到了《一个独立创造者的五年》的作者 Hawstein。从独立开发切入,我们聊了很多关于自身和时代的思考。做了六年捕蛇者说,本期是我个人(laike9m)最喜欢的一期,也希望大家喜欢。 本期关键词: 独立开发 / 人生规划 / 现代性与分工 / 副业模式 / 开源 / 自由的代价 / 存在主义危机 / 技术乐观 / 死亡思考 嘉宾 Hawstein 主播 Adam Wen laike9m 勘误与说明: Obsidian 并不开源,播客中的描述有误 本期节目录制时,关于「沉浸式翻译」的争议尚未出现。播客反映了我们当时的真实想法。对后来的争议这里不做评判。 时间点 00:14 Hawstein 自我介绍 05:56 Twitter 营销与独立开发者的困境 09:54 独立开发的本质与成功因素 15:17 产品开发方法与个人需求 20:22 个人需求与产品认同感 24:16 副业模式与安全网 27:17 工作与兴趣的平衡 31:11 情绪驱动与产品 Ownership 34:35 产品收购与理想主义 38:55 独立开发避坑指南 42:33 快速发布与开源策略 47:57 开源的负担与产品心态 52:32 成功产品的定义与收购流程 57:56 读者来信与现代人的追求 1:02:31 自由的代价与存在主义危机 1:07:17 中等智慧陷阱与阿甘精神 1:11:56 旧秩序的崩塌与新秩序的建立 1:15:02 技术乐观与财富集中 1:19:24 人类文明的叙事与死亡思考 链接 Tweet Hunter 像造产品的机器一般的 indie hacker Tibo Git GUI Fork Naval x Kapil Gupta: Conquering the Mind 施瓦辛格关于 marketing is an art 的 Tweet Pieter Levels 的书 《Make》 做 Inkdrop 的日本 indie hacker: Takuya 做了 Gridea 和 Minttr 的开发者:@EryouHao Obsidian 作者的上一个产品 Dynalist Eudaimonia 沉浸式翻译作者 Owen ChatGPT for Google 的作者 @wong2 TypingMind 和 blackmagic.so 的作者 @tdinh_me 用于收购和买卖 online business 的平台:acquire.com / flippa.com 钱钟书的短文:论快乐 上帝已死 UBI Steve Jobs 斯坦福演讲 Anything You Want Your Music and People 《超越百岁》 程序员延寿指南 《何为良好生活》 《价值的理由》 High Agency In 30 Minutes

    1h33min
  2. 5 DE JUL.

    Ep 55. 从文科转码到给 CPython 做贡献(纯文字稿)

    本期节目应嘉宾的要求,我们只发布了文字稿。带来的不便还请各位听众谅解。 嘉宾 tanloong 链接 gh-133390: Support SQL keyword completion for sqlite3 CLI by tanloong · Pull Request #133393 · python/cpython SQLite Keywords QuantWiki - 中文量化百科 《阳光马达棒球场!》 文字稿 laike9m: 哈喽大家好,欢迎来到最新一期的《捕蛇者说》。我们今天请到了谭龙,然后让他来聊一聊给 CPython 做贡献的经历。谭龙其实最近给 CPython 提了一个 PR,然后也是他第一次给 CPython 做贡献。然后呢,这个贡献是给 SQLite 的那个命令行加了一些命令补全,就是可以补全 SQLite 的关键字。我们今天另外一位主播是 Manjusaka。 Manjusaka: 请叫我 Nadeshiko Manju,对吧?OK,大家好,好久不见,我又回来了。然后今天很高兴又来和 laike9m 进行搭档,来。 laike9m: 好,然后这是我们今天的嘉宾谭龙,你要不先简单介绍一下自己吧。 tanloong: Hello,大家好,我叫谭龙,我是山东的。然后 18 年的时候是来青岛上大学,然后大学本科毕业之后就在这找工作了。我本科不是计算机的,毕业之后找工作也找了一些计算机相关的工作,也有一些其他方面的工作,中间也换了好几次工作。最近是刚刚入职一家新的公司,然后是做数据分析方面的工作。谢谢。 laike9m: 所以你说你本科不是学计算机,方便透露一下吗?你本科学的是什么? tanloong: 我本科是英语的。 laike9m: 哦,这个跨度很大。 tanloong: 对,确实。其实我本科最开始填志愿的时候,我录取的专业也不是英语,是一个调剂的专业,叫生态学。然后我是大一下学期的时候想转专业,然后正好我们学校有转专业的政策,我就从高中学的那几门课里,我觉得英语我学得还可以,然后当时也比较喜欢,所以我就决定转英语了。直到后来快毕业的时候才有点接触到这个计算机方面的这个东西。 laike9m: 然后就发现自己还是更喜欢计算机一些。那所以你之后是进行一些自学吗?然后就去找工作还是? tanloong: 对,基本上是自学。最开始接触计算机是大一的寒假,我们辅导员让学生回家的时候在假期要学点东西,然后开学让交学习笔记。我当时从一个中国大学 MOOC 上注册了一个账号,然后它弹出来的,第一个给我推荐的课程就是 Python。那我就学这个吧。所以当时我就学,就学了这个。当时学得很不明白,然后就把 PPT 跟着敲了一遍,但是也云里雾里的。直到后来后面的几个寒暑假才看了一些成体系的 Python 的入门的书,然后算是入门 Python 了。 laike9m: 所以换句话说就是你其实一开始学,你并不知道 Python 是干嘛的,就是并没有特别地抱着某种目的,比如说我就想找一个程序员的工作这样子。 tanloong: 没有,开始的原因只是巧合,但后面坚持下来,应该也算是因为比较喜欢吧。我觉得比较有意思。 laike9m: 那还是挺有意思的,对,感觉是命运的安排。 Manjusaka: 咱行看起来都是转行的。诶,那 laike9m 你是转行吗? laike9m: 我本科也不是学计算机的,然后我知道你本科也不是,所以。 Manjusaka: 对,那看起来大家这三个人跟少女乐队一样,这三个人里面抽不出一张计算机本科学位。 laike9m: 对,但我觉得还是你的英语这个跨度最大。 Manjusaka: 啊,对,然后,哇,卧槽。啊,现在要是学日语的,我突然就想问一下为什么要学日语。 laike9m: 学日语的转计算机还真没见过,但是很多程序员都会日语。 Manjusaka: 有,可能在大连那边还真有。 laike9m: 啊,对,大连日本人比较多。 Manjusaka: 对,对,对,日语外包会多一些。 laike9m: 嗯,好,对,说回正题,就是你相当于一开始接触的编程语言就是 Python, 然后后来相当于你在工作中可以理解也是主要用 Python, 对吗? tanloong: 对的,我有两份工作是跟计算机相关,然后都是写 Python 的。第一个工作是之前的一份是写图形界面的,用的是 PySide, 然后就写一个称重系统。他们是一个建桥公司,就是他们需要统计他们的货车送多少货进他们工厂,然后运多少货出来,写一个这个图形界面,然后放在那个他们的磅站去,然后货车过磅的时候来统计数据。另一个工作是现在的工作是在一个私募公司做数据分析。我之前没接触过股票证券这方面的东西,现在还在学习。 laike9m: 你是开发算法吗,还是给他们开发一些内部工具或者界面之类的? tanloong: 内部工具,我们组三个人有写算法的,但是我是属于比较初级的那种,只能写一些帮他们节省时间的工具。 laike9m: OK,对,因为我感觉那种像交易的算法可能更需要用 C++ 一些,对吧?还是说其实也有用 Python,比较好奇。 tanloong: 我们公司开发部应该是写 C++ 的,然后应该也有写 Python, 但是数据分析我们那个组主要是做一些因子的构建,就分析哪些因子它对你的这个股票的收益率贡献比较大,就这种的,我们就主要是写 Python,不写 C++。 laike9m: 明白,好的。所以就是到了今天我们要聊这个话题,然后你给 CPython 做了一个贡献。那我相信就是百分之可能 99.99% 的用过 Python 的人都没有给 Python 做过贡献,那么你一开始是怎么有这个想法的?然后就是后来你是怎么去一步一步实施这个的? tanloong: 我最开始有这个想法是应该从天哥,就是 B 站的那个,对,他当时成为 Python Core Dev 之后,在直播的时候就有人在直播间问一个给 Python 做贡献的问题,做贡献难不难呢?这些之类的。但是天哥说,如果你想给 Python 做贡献,你是会发现有很多事可以做的,做贡献并不难。然后后来就是之前我在写称重系统的时候,需要用到 SQLite 去查用户存的那个本地的数据库。然后当时我就发现 Python 的 SQLite 的命令行界面有点不好使,就是如果它能有那个补全就好了,所以当时是有那个想法。然后实施是在后来我前段时间没有工作,然后就每天比较闲,然后我想找点事做,然后我想起来之前我想给那个 SQLite 的加补全的这个想法,我就试试吧。然后我就去 GitHub 上找,我就试了一下。然后试的时候我发现,我本来觉得这个应该是挺难的,因为我完全不知道它这个补全要怎么实现。但是我去看了一下 PDB,就是天哥维护的那个 PDB 里面的代码,它里面实现补全是那样写的,然后我就照着 PDB 的补全,然后给 SQLite 加了一个补全,然后就交了 PR。 laike9m: 所以其实也是从你的实际工作需求出发,然后加上高天的激励。对,你知道高天也来过我们这边好几次吧? tanloong: 对,两次。 laike9m: 老听众,看来是。对,然后我觉得这个还挺有意思,就是也是算是榜样的力量吧。就是我不知道还有没有其他人是这样,就是因为听到就是有个人跟他说,哎,其实做贡献没有那么难,然后去做了,但这样挺好的。我算吧。你也算吗? Manjusaka: 对,我算。当时我是先认识张翔老师,然后后面然后跟他聊了一些,就包括我可能当时,那位你可能还认识,那个 Ezio Melotti。谁?18 年北京的那位嘉宾,Ezio。 laike9m: 你说 PyCon。 Manjusaka: 对,就是当时我们不是邀请到另外一位来北京。 laike9m: 哦。PyCon China Beijing 2018。2018 吗?2018 我去了吗?我有点不记得了。没事你继续说吧。 Manjusaka: 你在北京,你当时还没 transfer 去美国,然后你从上海来北京。 laike9m: OK。 Manjusaka: 然后我当时聊了一下,就后面开始,正好 18 年,后面我就说我正好在休息,后面就开始陆陆续续提一些贡献,对。 laike9m: 嗯,对对,其实我觉得翔哥一定程度上也是当时给了我一些激励或者指导嘛,对。 Manjusaka: 对,张翔老师还是非常 nice 的。 laike9m: 对,就给听众们如果有不知道,就是张翔是中国的第一个 CPython core developer, 第一个核心开发者,对,然后高天是第二个。 Manjusaka: 对,然后张翔老师应该是在 16 年晋升的。嗯,反正是老前辈了,老前辈了。 laike9m: 但其实他当时就是更多是因为工作中会需要改一些 CPython 代码,他当时在华为嘛,对吧? Manjusaka: 然后。哦,不不不,他晋升成为 CPython Core 的时候,我记得没错,是在新浪,然后他就开始编的。 laike9m: 哦,新浪,OK。 Manjusaka: 对,然后他去华为其实做的也不是跟 CPython 本身相关的,他是去做的 OpenStack 相关的东西。对,然后他对就是说是整个生态工具链会比较熟,所以说他可能跟高天老师就是说是有一点不一样,是张翔老师对于各种非常疑难问题的 debug 非常擅长,这也是我记得介绍人给他在他的 promote 介绍里面说的,对。 laike9m: 嗯,我记得他当时那个演讲。 Manjusaka: 对对对,然后我的很多 debug 技巧也来自于张翔老师,对。 laike9m: Anyway,我觉得后人都是在前人的一些基础上去做工作的。 Manjusaka: 是的,没错。 laike9m: 好,那说回谭龙的这个 PR,我其实也简单看了一下,其实我原来也不知道补全要怎么加,但发现其实还真的挺简单的。你可以跟听众们大概说一下这个流程吗?比如说我要给一个像 Python 的 SQLite 命令行加补全,它大概要做些什么工作? tanloong: 它是写一个 context manager,

    10 s
  3. 19 DE MAI.

    Ep 54. React Native 已死?Jetpack Compose 当立

    本期节目我们和《二分电台》的主播 2BAB 探讨了移动应用开发领域的技术趋势。AB 详细介绍了原生与非原生开发的区别,以及 Flutter、ReactNative 和 Kotlin Multiplatform (KMP) 等跨平台框架的特点。嘉宾们还分析了各种技术选型的优劣,例如 ReactNative 的热更新优势和 Flutter 的 UI 一致性,以及 Kotlin 作为 Android 官方语言的崛起。最后,节目还探讨了 On-Device 模型在移动设备上的应用前景,例如图像语义搜索和离线推理,并对 AI 技术在移动开发领域的潜在影响进行了展望。 嘉宾 2BAB (AB) 主播 laike9m Manjusaka 章节 00:14 移动端开发框架介绍与原生/非原生定义 07:03 ReactNative 的兴起、问题与 Flutter 的挑战 14:19 Kotlin Multiplatform (KMP) 与 Jetpack Compose 的发展 23:22 KMP 的流行度、ReactNative 的价值与未来发展 30:05 Electron 的妥协与热更新的重要性 37:43 入门移动端开发的建议与 Flutter 的未来 42:57 Flutter 的风险与 Kotlin 的竞争 48:45 On-Device Model 的应用与发展 55:10 On-Device Model 的功耗与应用场景 1:03:08 On-Device Model 的隐私与安全 1:10:03 总结与推荐 链接 React Native Flutter Kotlin Programming Language Jetpack Compose Kotlin Multiplatform (KMP) Compose Multiplatform (CMP) SkiaSkia is an open source 2D graphics library which provides common APIs that work across a variety of hardware and software platforms. It serves as the graphics engine for Google Chrome and ChromeOS, Android, Flutter, and many other products. The Truth About React Native - YouTube google/XNNPACK: High-efficiency floating-point neural network inference operators for mobile, server, and Web React Native Panel hosted by Jamon Holmgren - Chiara Mooney, Eli White, Keith Kurak, Chris Traganos - YouTube Gemini Nano litert-community/Gemma3-1B-IT · Hugging Face OpenAIDoc | 开发者友好的文档中心,一站式解决您的技术文档需求 《mono 女孩》

    1h13min
  4. 24/12/2024

    Ep 51. 独立开发,做 App 还是做 SaaS?【推广和销售】

    本期播客探讨了独立开发者在推出 App 和 SaaS 产品时面临的推广与销售挑战。 相较于 SaaS,App 的渠道分发更为复杂,需要通过应用商店的审核流程。在推广方面,由于国内用户更倾向于使用移动设备,且很多平台限制 URL 链接,App 的推广相对容易,而 SaaS 则更依赖于搜索引擎优化。付费转化上,App 的买断模式更容易被用户接受,而 SaaS 的订阅模式更符合其对持续维护的需求。嘉宾们最后建议开发者根据目标用户(是否熟悉 URL 和电脑操作)以及产品类型来选择适合的 App 或 SaaS,并探讨了更灵活的付费模式,如按年买断。 嘉宾、主播,和他们的产品 Randy Cusdis - Lightweight, privacy-first, open-source comment system Notepal - 浏览器插件,一键同步微信读书笔记到 Notion, Logseq, Readwise, flomo EpubKit - The best tool to convert web to ebook Adam Wen laike9m Clicknow - Mac 上最好的划词 AI 搜索 & 翻译,无需 API key 时间点 00:00 独立开发者:App 还是 SaaS?开篇与渠道分发 04:36 App 与 SaaS 的渠道分发差异及优势 06:02 国内外推广差异:URL 与 App Store 的对比 10:00 SEO 与 App 推广:国内外市场对比 13:29 国内 SaaS 推广困境:平台限制与传播难题 17:44 国内用户习惯与推广策略:微信、二维码与邮件 23:21 国内推广策略:绕过平台限制的尝试 27:22 SaaS 与 App 的付费转化及推广策略 37:43 播客推广的独特优势与付费模式选择 57:06 付费转化率与国内 SaaS 市场现状

    1h11min
  5. 16/11/2024

    Ep 50. 独立开发,做 App 还是做 SaaS?【开发篇】

    本期节目探讨了独立开发者选择开发 App 还是 SaaS 的利弊。我们从多个角度进行了深入分析,包括开发效率、跨平台能力、所需设备、维护成本等。下期节目中我们会从产品发布和推广的角度进行比较,敬请期待。 总结起来:SaaS 在开发效率和资源模板方面更具优势,但在移动端的应用受到限制;而 App 开发则更依赖于特定的平台和设备,维护成本可能因操作系统更新和与其他应用的兼容性问题而上升。最终的选择还是要根据开发者的技术背景、目标用户和市场定位来决定。 嘉宾、主播,和他们的产品 Randy Cusdis - Lightweight, privacy-first, open-source comment system Notepal - 浏览器插件,一键同步微信读书笔记到 Notion, Logseq, Readwise, flomo EpubKit - The best tool to convert web to ebook Adam Wen laike9m Clicknow - Mac 上最好的划词 AI 搜索 & 翻译,无需 API key 时间点 00:00 嘉宾和主播们都开发了哪些产品 05:53 App 与 SaaS 的定义与界限 09:14 开发效率 SaaS 由于资源丰富、模板易复用,开发效率通常高于 App,但 AI 工具缩小了两者的差距 18:47 跨平台性与移动端支持 SaaS 天然跨平台,但移动端支持受限;App 跨平台需借助 Flutter 等框架,但平台割裂问题依然存在。PWA 提供了一种折中方案,但用户使用习惯有待培养。 27:35 开发设备 SaaS 对开发设备要求低,App 则可能需要特定操作系统和高性能设备。远程桌面技术可以一定程度上解决 App 开发对设备的限制。 30:06 维护成本 维护成本方面,App 的维护成本并非一定低于 SaaS,操作系统更新、与其他 App 冲突等都可能带来维护难题。SaaS 的维护成本则主要体现在服务器和数据库的维护上。 38:09 国内开发环境的挑战与应对策略 国内 SaaS 开发需要考虑合规性、支付接口接入等问题,这部分成本和时间消耗不容忽视。支付集成方面,国内市场循环扣费的支付方案选择有限,对开发者资质要求较高。 48:36 App 发布、代码管理和用户反馈

    51min
4,3
de 5
29 avaliações

Sobre

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

Você também pode gostar de