【podcast】TalkPythonToMe


背景

在 iTunes 上偶然发现了这个 Podcast,简单介绍一下,这个节目每期会请一个嘉宾谈谈他关于 Python 的工作经历,有时是介绍 Python 在某个公司的应用,有时是介绍某个 Python 框架(一般嘉宾就是该框架的创造者)的情况,形式很多样,不会谈具体的代码,但绝对是关于 Python 的最好的技术型播客,能开拓眼界,也能学到知识。一般情况下结尾的时候主持人 Michael 会问嘉宾用什么编辑器,会让嘉宾推荐一个最不为人知但又最值得推荐的 Python library。背景音乐是 Developers, Developers, Developers

我大概从15年底开始听并记录这个节目,下面的内容可以说是概要,也可以说是索引,对于想要对节目进行大致了解的朋友应该有些帮助,如果有什么想法可以在下面评论。不定期更新。

  • Sun Dec 11 11:44:08 CST 2016

希望这篇记录在互联网上不是垃圾。至少她对于我来说是有价值的,我把搜索到的相关资源都记录下来了,当想起什么的时候就不需要搜索第二次了,希望对于其他人也有所帮助。

#0: Introducing the show! recorded Saturday, March 21st, 2015 时长00:03:23

  • 主持人是 Michael Kennedy,twitter id 是 @mkennedy
  • 第一位嘉宾将是 SQLAlchemy 的创始人、维护者Mike Bayer,也许之后会邀请来自MongoDB的Jesse Davis,PyMongo的创始人、维护者Jesse,访问 Eve,(OpenSource REST API)相关人员(实际上是第一期嘉宾)
  • talkpythontome.com(其实这个域名也是可以的:http://www.talkpython.fm)点击friends of the show,填写邮件,可以收到新节目的通知,有时可以填写问卷,说说以后想听什么话题

TOREVIEW

第一集,开场音乐是 developers,质量很高啊。说起来国内的节目和国外的节目还真是不同,国内谈技术的 Podcast 有Teahour,内核恐慌,Teahour 可能更正式一点,但严肃性比不上国外的很多节目,国外的节目会有开场音乐(找朋友写),有开场介绍,有赞助广告(让人觉得这个节目会持续办下去,给人靠谱的感觉),主持人和嘉宾之间会相互寒暄,非常非常有礼貌,节目结束会互相感谢,会有建设得很好的官方网站,几乎每个节目都有文稿,相比之下国内的节目就显得更轻松,更随性一点,我相信国外的节目也经历过轻松随性的阶段(80,90年代?),但他们发现这种方式并不高效,也许他们觉得要想娱乐,就听专门的娱乐节目,乐个痛快?于是他们对待事情慢慢地变得非常认真,我觉得这是国内的电台节目需要学习的地方,如果要做就把它做好,做技术节目,瞎聊当然是必需的,没有干货可以当做特点,但当做很光彩的事情就有点奇怪了吧?

#1: EVE - RESTful APIs for humans, Tuesday, Mar 31, 2015. 时长00:40:43

  • 嘉宾是 Nicola Iarocci,来自意大利的 Ravena。1991年,CIR2000的联合创始人,给小公司做财务管理软件,一直用 C#,后来开始学 Python,写 Flask
  • EVE 是一个开源的 Python REST API 框架(嗯,听到这我想把zhihu-api改成用 EVE 了),关于 REST 是什么,我做了一些搜索,目前找到的最好的资料是阮一峰的这篇博客
  • 后台默认用 MongoDB,因为操作 json(或者所 bson)很方便,10:00 左右介绍 Mongodb 的特点
  • 19:22 Nicola 谈到维护 EVE 时的感受
  • Flask Sentinel 是 flask 关于 oauth 的实现
  • 36:00 开始介绍几个在用 EVE 的公司

TOREVIEW

#2: Python and MongoDB Recorded on Sunday, Apr 5, 2015. 时长00:34:59

  • 嘉宾是Jesse Davis,来自MongoDB,在纽约工作,works on the MongoDB driver team,开发PyMongo和Mongo C Driver,为Tornado和asyncio贡献代码。15年前从欧柏林学院 | Oberlin College 毕业。最开始学C++
  • 8:32 简单介绍MongoDB,非关系型数据格式存储数据,叫做BSON,实际上是二进制的JSON格式…..
  • 11:42 广告时间,pythongear.com 卖一些Python周边
  • Motor支持2.6+,3.3,3.4,3.5
  • Monary is a numpy driver for MongoDB
  • MongoDB很快,numpy也很快,但它们之间的数据转换很慢
  • 29:45 聊到PyCharm,都是big fan of PyCharm
  • 在线教程,M101p,MongoDB 101 for Python
  • 推荐PyPi的packages, PyMongo, Motor, Toro,

TOREVIEW

简单介绍了MongoDB,要真的学的话还是要看文档要阅读,听这个就当是开阔眼界了。

#3: Pyramid Web Framework, Recorded on Monday, Apr 6, 2015. 时长00:48:10

  • 在FB上有账号了:facebook.com/talkpython,可以在soundcloud上面听了,soundcloud.com/talkpython,一个听众,Nathan Chaonin ,@nbchaonin at Twitter,正在众筹,打算把他的书Python101录成视屏
  • 嘉宾是Chris McDonough, Pyramid Web框架的作者,1999年加入Python社区,Agendaless Consulting的principal
  • 3:12 的Oh, go on. 的语气有点意思啊蛤蛤
  • Pyramid的granularity(细粒度?),control(控制性?)让主持人很喜欢Pyramid,talkpython.fm就是用Pyramid写的,听描述,有点像Flask
  • Chirs在1998年左右通过Zoup接触Python,Zoup与Pyramid在很多方面是对立的,而Chirs从Zoup汲取了很多,Pyramid有点像Sinatra,Flask这样的微框架,主持人提到像Bottle
  • 用template 或 web pages制作网页很简单,仅SEO的要求而言,传统的html不会死,但google会开始写能执行js代码的crawler的
  • 有一种说法是,views是templates,controllers是ruby代码,model是你的数据库
  • 14:24 提到,Pyramid这个项目,是更大的一个项目Pylons的一部分,类似于 Apache software foundation和旗下的软件的关系
  • 有三种内置的web site
    • Alchemy 用到SQLAlchemy ,主持人提到下一次将会邀请Mike Bayer谈谈SQLAlchemy(其实是Episode #5)
    • ZODB Chris说是big fan of ZODB
    • Starter 最简单的一个,不需要任何指定数据库,相当于「hello world」的页面
  • 一直到25:20, 说了一大堆,Chris的推荐是:用python setup.py develop 来安装
  • 31:22 说到Pyramid其实很小,只有15000-20000行代码
  • Chris认为将来web框架的趋势是,more json, less HTML, lighter weight smaller building blocks(主持人帮他说的)
  • 在pylonsproject.org上,可以下载Pyramid,WebOb

TOREVIEW

#4 Enterprise Python and Large-Scale Projects, Recorded on Tuesday, Apr 7, 2015. 时长54.06

  • 节目开头介绍了一个非常有意思的项目,Listen.hatnote.com,Listen to Wikipedia,把Wikipedia上的编辑实时用音乐展现,当有用户注册会有恢弘背景音,非常有意思,这个项目是Mahmoud做的
  • 嘉宾是Mahmoud,是eBay,PayPal的Python架构团队的主力程序员,专注于框架设计,API设计,系统鲁棒性
  • PayPal 最初的版本是C++写的
  • 16:59,主持人Michael谈到他对于python的进化还有一些见解,3.3 的yield from, 3.4的asyncio,3.5的 type hinting
  • 21:35,「is Python secure or not? 」 「you can never like really prove security,you can just sort of go with what it seems to be secure」
  • 24:30 Mahmoud 谈到他在一次技术分享结束后被别人鄙视用Python完成了这些,认为用一门脚本语言完成这些是不负责任的,没想到几年之后python在各个领域四处开放,有人用NumPy做数值分析,Disney Dreamworks and LucasArts用Python做动画渲染,游戏后端,邮件服务器
  • Mahmoud 提到Bank of America现在有5000+python开发者,吓尿。。。
  • 结束音乐来自Listen.hatnote.com,听起来居然挺好听

TOREVIEW

#5: SQLAlchemy and data access in Python, Published Tues, Apr 28, 2015, recorded Thurs, Apr 9, 2015. 时长01:02:42

  • 嘉宾是Mike Bayer,SQLAlchemy,Mako Templates,Alembic Migrations,Dogpile caching的作者,twitter@zzzeek
  • 最开始写Java,Perl,后来开始写Python
  • 4:37 开始简单介绍SQLAlchemy,Mike有很多使用Oracle,Postgres,Sybase Microsoft SQL server的经历
  • Mike谈了很多从性能角度如何选择Core和ORM,如何选择这两者还有什么其他考虑?20:34开始
  • hybrid thing really blew my mind
  • 39:56, 谈完 create_all,谈 add_a_column
  • 41:21, How about relationships?
  • 利用 SQLAlchemy 的 backref 概念,可以实现一对多,多对一
  • n+1 problem
  • 49:00 如何处理 SQLAlchemy 的版本问题的,Reddit 从0.4,0.5开始用
  • Reddit 只用 Core? 不用 ORM,他们的代码很奇特,Yelp,Uber,Uber 用 SQLAlchemy
  • 关于 Asyncio variation,Mike 写过一篇博客:Asynchronous Python in databases
  • 最后,推荐一个 pip 包,numpy,SQLAlchemy

TOREVIEW

#6: Requests, PyCon, and Python’s future, Published Tues, May 5, 2015, recorded Tues, Apr 21, 2015. 时长00:43:51

  • 嘉宾是 Kenneth Rietz,George Mason University dropped out
  • Requests 库之前的 title 是:HTTP for Python that doesn’t suck 2333333
  • before move off of request, notable users and famous use case.
  • Amazon 的内部在用 requests
  • 12:35 开始介绍 PyCon 的经历
  • 在 bit.ly/pycon2015mk 上有 pycon 的视屏集锦
  • 17:09 「I think Docker is going to be massive」
  • 开始讨论 Python2,Python3,36:12 开始讨论 Kenneth 在 Heroku 的工作
  • 最喜欢的一个 pypi 包是 Docopt(这个包是用来解析命令行参数的)
  • Heroku.com

这个小哥就是那个之前有点胖,有点宅,之后玩摄影,减肥变得很帅的小哥。

TOREVIEW

#7: Robot Operating System (ROS) and ROSPy, Published Tues, May 12, 2015, recorded Mon, Apr 27, 2015. 时长00:49:50

  • 嘉宾是 Dirk Thomas,The Robotic Operating System 大学的时候开始编程,接触了一个项目叫做 Tobocop,操作机器人踢足球,从这个项目开始接触 rototics,接触 Python
  • ROS 可以提供组件或服务之间的通信,同时也提供了一堆工具来帮助我们开发软件或机器人,你可以监控 robot 的状态,可以可视化

TODO

#8: Teaching Python at Grok Learning and Classrooms, Published Tues, May 19, 2015, recorded Mon, Apr 27, 2015. 时长00:37:03

  • 嘉宾是 James Curran 悉尼大学计算机专业的助理教授,Grok Learning 的联合创始人,twitter @doctorjamescurran,1998 年开始使用 Python
  • 5:53 开始介绍 Grok Learning,用来帮助老师教小孩子学习编程
  • 「Is Eliza Human」一个聊天机器人
  • code.org 给老师,学生制作的编程网站

其实 James 做的事情也是我一直想做的,这件事我一定会做,这是我的使命,不过对于我来说时候还未到,这里立个 Flag。

#9: Docker for the Python Developer Published, Tues, May 26, 2015, recorded Tues, Apr 28, 2015. 时长00:39:23

  • 嘉宾是来自 Docker 公司的 Patrick Chanozen,在 Netscape&Sun, Google, VMware, Microsoft 工作过
  • Docker 和这些容器技术会改变我们开发和交付软件的方式(And I really think Docker and these container technologies are going to change the way we build and deliver software.)
  • Docker 最早是 Solomn Hykes 主导的,他创建了 dotCloud 和 Docker,当时 Salesforce 开发了 Heroku, dotCloud 的处境有些艰难,后来开始开发 Docker
  • Docker 是一系列的基于 Linux,构建、交付、运行应用的工具,一般有一个 client 和一个 daemon,通过 Linux 的 container,可以有独立的文件系统,独立用户,独立的network namespace,所以说 Docker 是基于 Linux 的 namespace 和 cgroups 的。举个简单的例子,可以通过一个 Container 运行 Django 和 Flask,另外一个运行 MySQL 或 Redis
  • 8:45 怎么区别容器和虚拟机,Docker 的容器一般要比虚拟镜像要小很多,13:26 container is really nice unit of collaboration between devs and ops.
  • 17:06 怎么处理数据的问题
  • 20:10 介绍 Docker Hub,有点类似于 github 的方式
  • 28:56 The future of Docker
  • 谈到编排工具有 Google 开源的 kubernetes, Apache Mesos, Azure 的 Deis 等等
  • Docker Compose is actually written in Python

Links from the show:

TOREVIEW

#10: Bringing Python to the Masses with Hosting and DevOps at PythonAnywhere, Published Tues, Jun 2, 2015, recorded Tues, May 12, 2015. 时长01:15:38

  • Michael 从美国飞到伦敦跟 Henry 录这个节目
  • Henry 也是很早就开始编程,但是后来学了经济,做了一份管理顾问的工作,
    • 12:06 host cloud service on the cloud itself

#11: PyImageSearch and Computer Vision Published Tues, Jun 9, 2015, recorded Wed, May 20, 2015. 时长00:50:08

#12: Deep Dive into Modules and Packages Recorded on Wednesday, May 27, 2015. 时长00:52:09

  • Quick- what’s the difference between a module, a package and packaging in Python? 开头的介绍中,主持人还提到一个laptop sticker:Python will save the world. I don’t know how, but it will
  • 嘉宾是David Beazley ,生活在Chicago(芝加哥),独立开发者,也教课,写书。写了《Python Cookbook》(哇哦),《Python Essential Reference》,PyCon 2015上有一个talk,Packages and Modules。19年前开始接触Python,自己在写一门脚本语言的时候发现了Python。在一个超级计算机上学习,运行Python,各种受指责
  • 谈到技术培训领域时,对话是这样的,「Yeah, a lot of crazy things there, I guess if it wasn’t crazy it wouldn’t be worth doing I guess.」「Exactly. It would be like going back to high school instead.」啊哈哈,深得我心
  • 有一个观点是:module是单个的文件,而Package是一些文件的集合,可能是一个应用,一个框架之类的,
  • 15:49 TODO
  • 28:05 So what about threading?

#13: Flask web framework and much, much more. Recorded on Friday, May 29, 2015. 时长00:50:01

  • 嘉宾 Armin Ronacher,Flask 创始人,同时也玩 Rust,学的第一门语言是 Quick Basic,后来开始玩 Pascal,在 Windows 上的叫 Delphi,后来开始搞 PHP,最后开始搞 Python,上一个做的游戏是“Hello Master Chief Collection”
  • flask 基于 Werkzeug,处理 HTTP 协议内容,基于 jinja,作为模板引擎
  • 10:41 Armin Ronacher 谈到很多人都只是用 WSGI,jinja这两个库,而不是真正的用flask,我有同感,见过好几个框架都用WSGI,jinja也有几个开源软件用
  • flask 有超过14000赞,4000fork,6年了(15年录的,也就是说7年了)
  • 17:09 Armin Ronacher 谈到其实用哪个特定的框架都无所谓,Python 的生态系统可以帮你解决很多库的问题,但是在2007~2008年的情况有些不同,一些功能只在 Django 中有。
  • Pyramid的WSGI实现是WebOb, Django 的历史很长而且重新实现了几乎所有内容

TOREVIEW

#14: Moving from PHP to Python 3 with Patreon. Recorded on Tuesday, Jun 2, 2015. 时长00:49:27

  • 嘉宾是 Albert Sheu。Patreon是一个众筹网站,非常适合podcasts, 博客, 视屏或开源项目,听者,读者等。主持人在 Patreon 将 talkpythontome 做成了众筹项目,可以在这里找到,机缘巧合认识了Albert Sheu
  • Albert Sheu 学ABC的时候就开始学习C++,最开始很喜欢C++,因为非常硬核,后来发现Python解决问题很便捷,很精确,在Quora发现Python真的是一门serous的语言
  • Patreon最开始是用PHP写的,因为PHP能够快速实现需求,后来发现PHP不适合扩张,最麻烦的是维护性,想要快速部署(Python难道不是更难部署么?)

#15: Python at Spotify, PSF, and PyLadies Recorded on Thursday, Jun 4, 2015. 时长00:49:00

  • 嘉宾是Lynn Root, Spotify 的 insomniac software engineer(什么鬼?意思是说白天睡觉晚上工作的程序员?),旧金山PyLadies的创始人,Python 软件基金会的成员,Django 软件基金会成员。
  • 一直到16:43, Lynn谈PSF的常规工作有哪些,wiki.python.org记录了PSF的一些工作组
  • 20:56 开始聊PyLadies(类似于俱乐部?),PyLadies.com上有所有pyladies俱乐部的地址,
  • 26:11 开始聊newcoder.io, 2013 年发布了第一个版本,针对新手的教程网站,发布一些学习小组的项目,为初学者提供咨询
  • 30:52 开始聊与Spotify的关系,做了一个项目,可以将Spotify和Uber集成到车载系统中,在你开车的时候就可以用这些,开始是用Python写的,最近开始用Java。正在用Docker。
  • 40:57 Lynn喜欢在会议和用户组发言,最喜欢的的一个演讲时how to spy with Python,谈到了scapy,有意思,我用过scapy。

TOREVIEW

#16: Python at Netflix Published Tues, Jul 14, 2015, recorded Wed, Jun 10, 2015. 时长00:56:46

  • 嘉宾是来自 Netfix 的 Roy,managing the Insight Engineering organization at Netflix, inside engineering at Netflix is a software development group responsible for building real time operational inside systems.

#17: Python on bare metal with MicroPython Published Tues, Jul 21, 2015, recorded Thurs, Jun 25, 2015. 时长00:51:18

#18: Python Anti-patterns and other mistakes Published Tues, Jul 28, 2015, recorded Wed, Jul 1, 2015. 时长00:48:16

#19: Automate the Boring Stuff with Python Published Tues, Aug 4, 2015, recorded Thurs, Jul 2, 2015. 时长00:41:05

#20: Interactive Python and Teaching Python: Beyond Text Books Published Tues, Aug 11, 2015, recorded Tues, Jul 7, 2015. 时长00:48:46

#21: PyPy - The JIT Compiled Python Implementation Published Tues, Aug 18, 2015, recorded Wed, Jul 8, 2015. 时长00:53:56

#22: CPython Internals and Learning Python with pythontutor.com Published Tues, Aug 25, 2015, recorded Mon, Aug 3, 2015. 时长01:02:35

#23: 3D Printing with Python at Authentise Published Tues, Sep 1, 2015, recorded Wed, Aug 5, 2015. 时长00:46:57

#24: Fluent Python Published Tues, Sep 8, 2015, recorded Thurs, Aug 6, 2015. 时长01:08:20

#25: Effective Python Published Tues, Sep 15, 2015, recorded Wed, Aug 12, 2015. 时长00:54:04

#26: Deploying Python Web Applications (Updated) Published Tues, Sep 22, 2015, recorded Wed, Sep 9, 2015. 时长01:13:04

#27: Four Years of Python for High Schoolers Published Tues, Sep 29, 2015, recorded Mon, Sep 14, 2015. 时长00:44:34

#28: Making Python Fast: Profiling Python Code Published Tues, Oct 6, 2015, recorded Wed, Sep 16, 2015. 时长00:50:09

#29: Python at the Large Hadron Collider and CERN Published Tues, Oct 13, 2015, recorded Thurs, Sep 24, 2015. 时长00:52:10

#30: Python Community and Python at Dropbox Recorded on Thursday, Sep 24, 2015. 时长00:46:53

#31: Machine Learning with Python and scikit-learn Recorded on Friday, Sep 25, 2015. 时长00:49:18

#32: PyPy.js - PyPy Python in Your Browser, Wednesday, Sep 30, 2015. 时长00:59:11

  • 嘉宾是Ryan,来自Melbourne, Australia,Python+Javascript 程序员,在Mozilla工作
  • 嘉宾的PyCon 2015,PyPy.js What? How? Why? 在show note里面,可以一看

#33: OpenStack: Cloud computing built on Python, Nov 10, 2015. 时长00:56:37

  • 嘉宾是在Red Hat 工作的Flavio Percoco,正在做OpenStack项目,Rust 贡献者
  • Flavio 并不是从小就接触编程(终于遇到一个不是从小接触编程的了:),学了一下PHP,就想着要写一个浏览器,于是开始学C#打算开写,终于「I realized that that wasn’t actually very good idea」,在 Red Hat 工作,头衔是软件工程师,
  • OpenStack wiki是一款基础设施即服务软件,让任何人可以自行建立和提供云端计算服务,6:49: what is OpenStack
  • Flavio:「it just focused a lot on making sure that you could use all the hardware to provide services」
  • mkennedy:如果我想构建一个数据中心或者主机服务公司,OpenStack是很好的选择
  • Flavio:「If you want to be a good cloud provider or you want to have a cloud that you can manage easily without suffering a lot amendments and controlling in and ops and everything」9:07:「how I like to think about it, that’s how I like to present OpenStack, as a cloud provider and it will give you everything you need in the cloud. 」
    *「Digital Ocean basically just provides you a bit of private services like the server story. So you create your server and you have to manage it yourself, you don’t have everything that you would need for to run a cloud right there, right? And if you want to put your application in a cloud you would just go to either OpenStack or any of the cloud providers that have all those services that you would need to run your application and don’t die while trying to run it」,听起来有点像GAE?
  • 有很多的云服务提供商正在用OpenStack,比如Rackspace,Enter Cloud in Italy
  • 30:20 开始介绍OpenStack提供的一些服务
  • 38:54 mkennedy:假设我已经装了OpenStack,我想要装数据库,3个web端,以及虚拟网络的负载均衡,步骤?
  • 41:59 Red Hat和OpenStack的关系?
  • 49:35 what’s the story with Docker and OpenStack?
  • 推荐的pypi包是Oslo messaging,

#34: Continuum: Scientific Python and The Business of Open Source, Nov 17, 2015. 时长00:59:52

  • 嘉宾是Travis Oliphant,NumPy包的开发者,SciPy的创始人, Definitive Guide to NumPy的作者,四年级时开始学Basic,之前写MATLAB,后来开始写Python
  • 之前是大学教授,于是写了NumPy,之后开了一家公司Continuum
  • 「 our goals are to make it really easy for data analyses, for scientists, people to change the world this way you talk about them today」
  • 「I personally think we’ve helped with the recent explosion of Python in the Pydata world」
  • 21:55 开始谈为什么要把SciPy和Numpy开源
  • Bokeh
  • 45:39 聊Anaconda cloud,听起来有点像Docker?听到后面还真是,就是有点像Docker,不过是轻量级的Docker
  • 最后推荐的pypi包是Distributive,「Distributive is a way to parallel computing, in a modern Pythonic approach and it’s going to be the way Dask runs on mobile machines」

TOREVIEW

#35: Turbogears and the future of Python web frameworks, Published Tues, Nov 24, 2015, recorded Wed, Oct 28, 2015. 时长1:01:06

#36: Python IDEs with the PyCharm team 时长00:59:42

  • 主持人首先安利了一下 PyCharm,以及一篇博客
  • 嘉宾是 Dmitry Trofimov,twitter: @dmitrytrofimov, 来自 JetBrains 的 Python IDE,PyCharm 的开发部门,对自动化和软件工具化狂热,空闲时间热衷于跑步和铁人三项,目前生活在德国慕尼黑(Munich Germany)。七岁开始编程,最开始是用一台ZX Spectrum(https://en.wikipedia.org/wiki/ZX_Spectrum,8位个人电脑,很古老啊,还找到了一个有意思的页面,http://digi.tech.qq.com/a/20150318/012203.htm)。几年后开始学Pascal,老师很给力,用的是Turbo Pascal IDE。主持人的评价是:年轻,敏锐的程序员
  • Dmitry 开始从 Pascal 转向 Java,当然也学过C和汇编,学Java的时候发现自己需要一门脚本语言,于是用多门语言(Groovy, Ruby, Python and Perl)写一个小程序进行比较,原话是「Perl was a total disaster,but others were more or less equal」,对Python印象深刻,开始时不时使用Python,后来加入了PyCharm,已经5年半了。
  • JetBrains 目前有超过500人在那工作,在 Saint-Petersburg(圣彼得堡), Munich(慕尼黑), Prague(布拉格,捷克首都), Boston(波士顿)有办公室,最大的两个办公地点是Saint-Petersburg,Munich
  • 工具很重要,JetBrains 不只有 IDEs,有持续集成工具 TeamCity,bugtracker :YouTrack,code review tool:UpSource,有自己的JVM编程语言:Kotlin
  • 有些人甚至让 PyCharm 运行在 RaspberryPi 上,最新版本支持 Docker,有人让它运行在 Docker 上
  • 14人是 PyCharm 部门 的(因为PyCharm 基于 IntelliJ 平台)
  • PyCharm 可以上手即用的Web框架: 「It’s mostly all types of Python web framework so it is Django, Flask, Pyramid, Web2Py and also all kinds of pure web projects」
  • PyCharm 的 debugger 很给力,「we have some almost unique features like debugging of subprocesses, and debugging of applications on remote environments. 」
  • Python 之前没有标准的注释类型,所以有了PEP484,在Python 3.5中,龟叔提出了关于参数和变量的注释标准
  • 关于 type hints 的讨论:00:29:48
  • 支持 PyPy, Jython, IronPython
  • 「press Alt Enter and PyCharm will fix it for you.」
  • PyCharm 支持 Unit, Nose test, Py Test, AT test
  • 「you just press profile button for your own configuration and your process is executed with CProfile injected and as long as you want to capture a snapshot with your profile data you just press a button capture snapshot and it’s shown in PyCharm with statistics of what method– statistic for all functions how long did it take for them to launch and actually we have a nice visual representation in graph form where the hot spots are colored red and you can just see what is slow in your program.」(这么叼的功能我还没用过,怀疑CE版本 不支持T T)
  • Vagrant 是用来简化虚拟机使用的工具
  • 00:44:02 简介 Docker, 00:45:23 Docker 最主要的特点是快 00:46:41 安装 Docker toolbox
  • 推荐了一个插件:presentation assistant
  • 支持不少 Javascript 框架,如 Angular JS, Typescript(貌似CE版本又不支持?)
  • favorite PyPi package or maybe a project that are on GitHub or something that is cool or maybe not everyone knows about: coverage.py, Tox, and Detox(Done)

嘉宾是个德国人,说的英语听起来有点费劲,当然听各种口音也是学英语必需的。又是一个小时候就接触编程的程序员(羡慕)。他们说的不少很多东西我只是耳闻,还没实际接触过,看来路还很长哈哈。

#37: Python Cybersecurity and Penetration Testing, Published Tues, Dec 8, 2015, recorded Wed, Dec 2, 2015. 时长00:59:52

#38: Continuous Integration and Delivery at Codeship, Published Tues, Dec 15, 2015, recorded Thurs, Dec 10, 2015. 时长01:02:50

#39: Getting your first dev job as a Python developer (part 1), Published Tues, Dec 22, 2015, recorded Thurs, Dec 10, 2015. 时长00:50:43

健身时听的,印象还比较深刻。

  • panelists 小组讨论,Michael 会访问几个刚获得第一份开发工作的职人,这段音频对于 Python 英文面试会很有帮助。
  • 嘉宾是 Jess Unrein, Justin Beall, Eric Chou, Jonathan Sundqvist, Hellio Correia, Matt Yancey.
  • 第1个问题是,你在从事什么工作,你的雇主想要什么样的,你会跟什么类型的人工作,会开发什么类型的软件?Jess 在 Shift Gig 工作,工作一年了,开发 API 后台,用的是 Flask,支持 web 和 mobile 应用。在这之前,参加了一个 Dev Bootcamp, 学 ROR。Eric Chou 在 Azure 云计算团队工作。Jonathan Sundqvist 在 Server Density 工作。Server Density 是做服务监控的。Justin Beall 以前写了10年 Java,现在写 Python,在 OnShift 工作。Hellio Coreia 来自葡萄牙。Matt Yancey 在 First Analytics 从事数据科学的工作
  • 第2个问题是,你是怎么准备你的面试的。Jess;Eric Choul; Jonathan Sundkvist 在 Udacity 上课;Justin Beall; Hellio 以前写 PHP;Matt Yancey
  • 第3个问题是:获得这份工作的最重要的因素是什么。
  • 第4个问题是:你会给刚入行的开发者提什么建议。

TOREVIEW

#40: Top 10 Data Science Stories from 2015, Published Tues, Dec 29, 2015, recorded Sun, Dec 13, 2015. 时长00:59:19

#41: Getting your first dev job as a Python developer (part 2), Published Tues, Jan 12, 2016, recorded Thurs, Dec 10, 2015. 时长00:52:17

  • 接39,上一次是介绍新人,这一次是访问前辈。
  • 访问的是来自 Netflix 和 PayPal 的工程师,依旧是小组讨论的形式,嘉宾有:Roy Rapaport, Mahmoud Hashemi, Lorena Mesa, Adylzan Khashtamov, Greg Langston, Shawn Milochic. Roy Rapaport, 来自 Netflix,Mahmoud Hashemi, 来自 Pay Pal。
  • 2:47 第1个问题:What kind of developers do I get to hire and interview. 3:33 Roy Rapaport, 4:19 Mahmoud Hashemi, 5:57 Lorena Mesa, 8:30 Adylzan Khashtamov, 9:35 Greg Langston, 11:15 Shawn Milochik
  • 11:35 第2个问题:What is the most important piece of experience that you look for in a candidate, 11:42 Roy Rapaport, 12:11 Mahmoud Hashemi, 14:31 Lorena Mesa, 15:43 Adylzan Khashtamov, 17:28 Greg Langston,
  • 20:52 第3个问题:What you can bring and what you can work on when you don’t yet have your first job or at least your first job in Python. 21:34 Roy Rapaport, 22:41 Mahmoud Hashemi, 24:29 Lorena Mesa: side project 非常重要,28:52 Greg Langston, 30:31 Shawn Milochic
  • 32:01 第4个问题:两种类型的求职者,一种读了四年 CS,没有什么经验,另一种没有大学文凭,但有好几年工作经验,怎么抉择。
    33:09 Roy Rapaport, 34:21 Mahmoud Hashemi, 36:30 Lorena Mesa, 38:47 Adylzan Khashtamov: it depends, 40:32 Greg Langston
  • 41:48 第5个问题:Why did you hire the last person you hired? 42:22 Roy Rapaport, 43:07 Mahmoud Hashemi, 44:32 Adylzan Khashtamov, 46:25 Shawn Milochic,

TOREVIEW

#42: Python in Startups and Investing, Published Tues, Jan 19, 2016, recorded Thurs, Dec 17, 2015. 时长00:54:38

#43: Monitoring high performance Python apps at Opbeat, Published Tues, Jan 26, 2016, recorded Wed, Jan 13, 2016. 时长00:39:33

#44: Project Jupyter and IPython, Published Tues, Feb 2, 2016, recorded Tues, Jan 26, 2016. 时长01:00:11

#45: The Python Testing Column, Now a Thing, Published Tues, Feb 9, 2016, recorded Wed, Jan 27, 2016. 时长00:58:49

#46: Python in Movies and Entertainment, Published Tues, Feb 16, 2016, recorded Thurs, Jan 28, 2016. 时长00:57:13

#47: Python in Typeface and Font Development, Published Tues, Feb 23, 2016, recorded Tues, Feb 2, 2016. 时长00:44:39

  • 嘉宾是 Just,“do cool things with Python and fonts”, 龟叔的老弟,龟叔60了,Just50了,15岁,老爸买了一个sinclaire zx 81(不知道是啥),学过图像设计,印刷设计,先学的是编程,然后学字体设计。
  • 16:52 谈到字体是很有意思的技术,讲到字体混乱在什么地方

#48: Building Flask-based Web Apps, Recorded on Tuesday, Feb 2, 2016.

  • 嘉宾是 Miguel Grinberg , 《Flask Web开发》的作者,Whoop!
  • 80年代中期开始用 TI 99 编程,最开始用Basic写游戏,因为效率不是很好,用了汇编写核心部分
  • 在flask诞生的时候,已经有Django,bottle了,最开始是为了和老婆比赛,老婆是个blogger,开始和老婆比赛写blogger,但是不想用WordPress(“7:54 No, that has PHP in it.”黑得飞起),所以开始自己动手写blog引擎
  • Flask的哲学在于让你将web server形成接口,不用解析Http请求,7行可以写一个hello world
  • Flask 默认的模板引擎是jinja,当然你也可以用别的模板引擎
  • Miguel 认为Pyramid更像Django而不是Flask
  • 14:17 「once you understand it, of course, there is no magic」
  • 写了一个web socket,基本上是flask最流行的扩展了
  • 从 14:17 开始说了很多Flask和Pyramid的区别,看来得听第二遍了
  • 写完博客框架后开始写Flask教程了,之后又开始做视频
  • 38:18 开始介绍Miguel做过的跟Flask相关的项目
  • Flask Socket I/O, Flask Migrate, Flask HTTP Auth, Python Socket IO, Flask moment, Flask-page-down
  • 44:38 推荐了一个debug工具,PUDB

TODO: review

#49: Microsoft’s JIT-based Python Project: Pyjion, Published Tues, Mar 8, 2016, recorded Wed, Feb 3, 2016. 时长01:03:45

#50: Web scraping at scale with Scrapy and ScrapingHub, Published Tues, Mar 15, 2016, recorded Tues, Feb 16, 2016. 时长00:58:17

#51: SigOpt: Optimizing Everything with Python, Published Mon, Mar 21, 2016, recorded Thurs, Mar 3, 2016. 时长00:37:05

#52: EVE Online: MMO game powered by Python, Published Sun, Mar 27, 2016, recorded Wed, Mar 16, 2016. 时长00:54:35

#53: Python in Visual Studio, Published Wed, Apr 6, 2016, recorded Mon, Apr 4, 2016. 时长00:50:40

#54: Enterprise Software with Python, Published Thurs, Apr 14, 2016, recorded Mon, Apr 4, 2016. 时长01:07:44

#55: How our engineering environments are killing diversity (and how we can fix it), recorded Wed, Apr 20, 2016. 时长01:01:41

#56: Data Science from Scratch, recorded Tues, Apr 19, 2016. 时长00:51:03

#57: Python performance from the inside-out at Intel, recorded Mon, May 2, 2016. 时长00:56:34

#58: Create better Python programs with concurrency, libraries, and patterns, recorded Wed, May 4, 2016. 时长00:54:51

#59: SageMath - Open source is ready to compete in the classroom, recorded Tues, May 10, 2016. 时长00:59:24

#60: Scaling Python to 1000’s of cores with Ufora, recorded Mon, May 2, 2016. 时长01:07:28

  • 嘉宾是来自 Ufora 的 Braxton McKee,8 岁开始编程,现在是36岁,2008年开始写 Python
  • 8:28 开始介绍 Ufora,Ufora 是一个执行 Python 代码的平台,有五年历史了。不需要写分布式的代码,写平常的代码就可以实现分布式。
  • Braxton 解释 the basic idea of Hadoop
  • 18 分左右,讨论 Python 是非常 mutable 的。
  • 34:57

TODO

#61: Free software, free people, recorded Thurs, May 12, 2016. 时长00:54:17

  • 1:45 『one of the listeners suggested that I add all the episode transcripts to Github.』(Yeah, that’s me)
  • 嘉宾是 Pete,16岁开始写 Pascal,C++,2002年开始接触 Python,后来写的95%的代码是 Python
  • Free Software Free People, PyCon 2015,在 Telecomix 工作,卖 VPN 的公司???Pete 谈到埃及也有『墙』
  • 25:59 2011年夏天7月份在 Syria 工作,扫描了 Syria 国内的所有端口,27:58 完全是黑客的搞法啊,感觉有点像电影了
  • 41:17 The FBI, Google built them the back door, hacked by Chinese people…

TODO: review

#62: San Diego Technology Immersion Group Learns Python, Published Tues, Jun 7, 2016, recorded Tues, Jun 7, 2016. 时长01:09:21

#63: Validating Python tests with mutation testing, Published Thurs, Jun 16, 2016, recorded Wed, Jun 15, 2016. 时长00:59.36

  • 主题是 mutation testing, 貌似是一种刚提出的概念。节目开头提到,以往的测试都有覆盖率的概念,但是真正运行的代码和测试的代码是不同的。
  • 嘉宾是 Austin,10岁开始接触编程,当时家里有一台 IBM 80,当时学的是 Basic,大概是大学的时候,90s 开始接触 Python。大学里学的软件工程
  • 5:34 介绍 mutation testing,其主要目的是验证已存在测试的有效性。

#64: Inside the Python Package Index, Published Fri, Jun 24, 2016, recorded Wed, Jun 22, 2016.

#65: Jump on the real-time web with RethinkDB, Published Wed, Jun 29, 2016, recorded Wed, Jun 22, 2016.

#66: Faster Python Programs: Measure, Don’t Guess,Published Thurs, Jul 7, 2016, recorded Mon, Jul 4, 2016.

#67: Property-based Testing with Hypothesis, Published Wed, Jul 13, 2016, recorded Mon, Jul 11, 2016.

#68: Crossing the streams with Podcast.init Published Wed, Jul 20, 2016, recorded Mon, Jul 11, 2016.

#69: Write an Excellent Programming Blog, Published Tues, Jul 26, 2016, recorded Tues, Jul 19, 2016.

这一集 podcast 还挺有价值的,可以学学怎么写博客

TOREVIEW

#70: Pythonic cover songs at Loudr, Published Fri, Aug 5, 2016, recorded Fri, Jul 29, 2016.

  • 嘉宾是 Josh,从小接触编程,给 Doom Wads 编程。loudr是一个发布翻唱歌曲的平台,『just upload your album you send us the metadata, you let us know what songs you’ve covered, and we take care of the rest.』
  • 20:34 Let’s talk about Python. Loudr is built on Google App Engine
  • GAE web actual API?
  • 33:43 So, you mentioned machine learning, what’s the story there? Is that like scikit learn and what problems are you actually solving. neural networks 各种瞎聊,44 都聊到量子计算机了。
  • pale It’s designed to make implementing and maintaining APIs easy, with convenient support for versioning, generating documentation from code, and modularity.
  • 52:02 Python2 or Python3

TOREVIEW

#71: Soft Skills: The software developer’s life manual, Published Thurs, Aug 11, 2016, recorded Wed, Aug 10, 2016.

  • 嘉宾是 John,讨论一下 software careers
  • 23:21『I think that the thing is that you have to have the mindset that you are a business, right, that you are the business not that you’re an employee, whether you’re an employee or not』
  • 27:07 John’s book, Soft Skills, The Software Developers’ Life Manual.
  • 42:39 What do you think about like a small company versus large company?
  • 48:50 So you can build a reputation much faster.
  • 61:38 Pick something that you’re going to change, something that you’re going to do and actually do it.

TOREVIEW

#72: Fashion-driven open source software at Zalando, Published Fri, Aug 19, 2016, recorded Thurs, Aug 11, 2016.

  • 嘉宾是 Lauri, Rafael. Lauri Apple 是 Zalando 的开源布道者(evangelist),以前是读法律的。Rafael 从2000年开始接触电脑,真正开始接触编程是2005年(02年开始接触 Linux) ​
  • 11:37 What is Zalando?
  • 17:50 so are you using Docker? 使用 Swagger 来描述 open API
  • 25:34 what are some of the real technical challenges that you guys have at Zalando: scaleability, getting teams to be cross functional? scaleability,
  • 39:06 Are you guys using Python 2 or Python 3? zalando.github.io 45:25 so what’s Swagger 这里提到的 Swagger,类似于灵雀云内部生成 api 的工具 raml

TOREVIEW

#73: Machine learning at the new Microsoft, Recorded on Thursday, Aug 25, 2016.

TODO

#74: Past, Present, and Future of IronPython

Published Fri, Sep 2, 2016, recorded Wed, Aug 31, 2016.

  • 嘉宾是 Alex,IronPython 的维护者,以前接触 c/c++, 大学的时候接触了Python,搞嵌入式芯片
  • 06 年开始在 Microsoft 搞 IronPython, 目前已经是 Apache 协议了,IronPython, started by Jim Hugunin
  • 9:39 为什么选择 IronPython 而不是 CPython,能和 C# 语言更好地交互。
  • 13:38 在某些方面,比 CPython 的性能更好,没有 GIL,
  • Alex 还有一个 co-maintainer, Benedict Eggers, 18:52, Michael 说的话很有意思:『it’s interesting that was over Twitter, I feel like people outside the development space don’t really appreciate how special Twitter is, in connecting you with people who you would otherwise not be connected to. 』
  • 28:18 What is the story with Python 3 versus Python 2 since you brought it up. IronPython3 也会有 async, await
  • IronLanguagesironpython3 bug 好像挺多的,

TOREVIEW

#75: Pythonic games at CheckIO

Published Fri, Sep 9, 2016, recorded Thurs, Sep 8, 2016.
TODO

#76: Renewable Python, Published Thurs, Sep 15, 2016, recorded Mon, Sep 12, 2016.

  • 嘉宾是 Anna, 利用 Python 处理气候变换,可再生能源相关的事情,本来是个科学家,working on protein folding, protein structure, 博士毕业后开始学习 Python,本来是搞 C++ 的,发现太恶心了,开始搞 Python
  • http://worrydream.com/ 的效果非常酷炫啊
  • 16:22 技术栈是 Python, rest framework api, Celery, Postgres
  • 27:54 PyIso is a set of Python client libraries that we use for scraping data from different online sources about what’s happening at the power grid

TOREVIEW

#77: 20 Python Libraries You Aren’t Using (But Should), Published Fri, Sep 23, 2016, recorded Tues, Sep 20, 2016.

  • 嘉宾是 Caleb, 刚给 O’Reilly 写了一本书,20 Python Libraries You Aren’t Using(But should),这本书是免费的,在 reddit 上有一个帖子,基本所有的书都可以用 wget 来下载。
  • Caleb 以前听过 C++ 的播客。明天去一家叫做 Console 的公司工作。本来那本书叫做 10 Python Libraries You Aren’t Using But Should
  • 书我看过了,是本好书。
  • 40:53, you also talked about PyQtGragh. Why’d you pick that over say matplotlib? 46:49, PyWebview over electron. 48:46 谈到 watchdog,55:44 处理时间,用 Arrow。
  • 01:03:01 the killer feature of the cache functionality in Boltons is the way that you can share a cache among multiple function calls.
  • 01:10:03 Caleb 谈到 Awsome Python is so awesome that many of the other language communities have now begun to copy it so you can also find Awesome Go.

#78: How I built an entire game and toolchain 100% in Python, Published Wed, Sep 28, 2016, recorded Sat, Sep 24, 2016.

#79: Beeware Python Tools, Published Fri, Oct 7, 2016, recorded Tues, Oct 4, 2016.

#80: TinyDB: A tiny document db written in Python, Published Sun, Oct 16, 2016, recorded Thurs, Oct 13, 2016.

#81: Python and Machine Learning in Astronomy, Published Fri, Oct 21, 2016, recorded Fri, Oct 21, 2016.

#82: Grokking Algorithms in Python, Published Thurs, Oct 27, 2016, recorded Mon, Oct 24, 2016.

#83: Python Videos on Demand at PyVideo, Published Wed, Nov 2, 2016, recorded Wed, Oct 26, 2016.

#84: Are we failing to fund Python’s core infrastructure? Published Tues, Nov 8, 2016, recorded Mon, Oct 31, 2016.

TODO

#85: Parsing horrible things with Python, Published Thurs, Nov 17, 2016, recorded Thurs, Oct 27, 2016.

TODO

#86: Python at StackOverflow, Published Thurs, Nov 24, 2016, recorded Wed, Nov 2, 2016.

TODO

#87: PonyORM: The most Pythonic ORM yet? Published Tues, Nov 29, 2016, recorded Thurs, Nov 3, 2016.

#88: Lightweight Django, Published Tues, Dec 6, 2016, recorded Wed, Nov 23, 2016.

#89: A conversation with the Chief Data Scientist of the United States, Published Thurs, Dec 15, 2016, recorded Thurs, Dec 1, 2016.

#90: Data Wrangling with Python, Published Wed, Dec 21, 2016, recorded Mon, Nov 28, 2016.

#91: Top 10 Data Science Stories of 2016, Published Tues, Dec 27, 2016, recorded Wed, Nov 23, 2016.

#92: Bonus: Python Bytes Crossover: Python 3.6 is going to be awesome, Kite: your friendly co-developing AI, Published Thurs, Dec 29, 2016, recorded Mon, Dec 12, 2016.

#93: Spreading Python through the sciences with Software Carpentry, Published Tues, Jan 3, 2017, recorded Tues, Dec 6, 2016.

#94: Guaranteed packages via Conda and Conda-Forge, Published Wed, Jan 11, 2017, recorded Tues, Dec 6, 2016.

#95: Grumpy: Running Python on Go, Published Wed, Jan 18, 2017, recorded Thurs, Jan 12, 2017.

#96: Exploring Awesome Python, Published Wed, Jan 25, 2017, recorded Mon, Jan 16, 2017.

#97: Flask, Django style with Flask-Diamond, Published Thurs, Feb 2, 2017, recorded Mon, Jan 16, 2017.

  • Flask-Diamond is a batteries-included Flask framework. 嘉宾是Ian Dennis Miller,六七年级开始编程
  • 就像16:59 讨论的那样,这种东西很难找到平衡点
  • 55:27 谈到 gthnk.com

TOREVIEW

#98: Adding concurrency to Django with Django Channels, Published Wed, Feb 8, 2017, recorded Tues, Jan 17, 2017.

  • asynchronous programming

#99: Morepath: Super Powered Python Web Framework, Recorded on Thursday, Jan 19, 2017.

  • 嘉宾是 Martijn Faassen,小时候在 BASIC 上写游戏,第一台使用的 PC 是 Triumph-Adler,家里的电脑是:MSX2

Then I remember printing out the Python tutorial from python.org, and I read it one evening before sleeping, and the next day I was a Python programmer.

  • 提到 zope 当时很火,类似于 Django 现在火的程度,Martijn 花了一些时间在 Zope 2 中兼容 Zope 3,因此创造了 Five 这个项目,促使 Six 项目诞生
  • 创建了一个叫做 Obviel 的 JavaScript 框架
  • 2014, EuroPython(shownotes 里面没有放这个链接), 解释了为什么 Flask,Django,Pyramid 都有了的时候,还要创建一个新的 Web 框架。『Can’t help myself』,默认使用 WebOb 处理 WSGI 18:04 开始谈论 Morepath 的一些细节
  • 43:29 怎么开始使用 Morepath,可以使用的模板引擎:Chameleon,Jinja2,Mako
  • 50.46 Martijn 原来也是 lxml 的作者

TOREVIEW

#100: Python past, present, and future with Guido van Rossum, Recorded on Wednesday, Jan 18, 2017.

  • 第一百期,来自 Guido van Rossum,Python 的创造者,在阿姆斯特丹大学学习,毕业后在 ABC 待了快4年
  • Python 开源的影响?Guido:只有帮助,Python 的历史其实比 Web 开发的历史还早
  • I mean caches in CPUs and the whole sort of L1, L2, L3 memory architecture has affected language implementations dramatically, and I don’t even know all the ins and outs of that area. And fortunately, we have other core developers who keep up with that and do that for me.
  • 51:18 Guido 黑 C++ 委员会,哈哈哈哈,黑 C++ 就知道抄 Python

TOREVIEW

#102: Effective Code Reviews, Published Wed, Mar 8, 2017, recorded Tues, Feb 28, 2017.

  • 嘉宾是 Dougal Matthews, 来自 EuroPython,因此来到这个节目,2000 年左右父亲的公司需要一个网站,于是开始做网站,写 PHP,后来接触 Django,现在在 Reta 工作,搞 OpenStack 相关的东西,让 OpenStack 更容易使用,安装。
  • 09:35 开始谈代码审查。CI 非常重要。
  • 16:58 推荐了 Code Complete 这本书,
  • 45:12 推荐了 Vulture,它能帮你找到一个项目里没有用过的代码片段,pipdeptree,把安装的包以树的形式输出。试了一下,还挺有意思的

TOREVIEW

#103: Compiling Python through PyLLVM and MongoDB for Data Scientists, Published Thurs, Mar 16, 2017, recorded Mon, Mar 6, 2017.

#104: Game Theory in Python, Published Thurs, Mar 23, 2017, recorded Wed, Mar 8, 2017.

TODO

#105: A Pythonic Database Tour, Published Mon, Mar 27, 2017, recorded Thurs, Mar 16, 2017.

  • ZODB,Python object-orientd database,Jim Fulton 1981 年开始写 Fortran,1996 开始的项目

TODO


关于文稿

EE-Book里添加了对talk python的支持,可以把所有文稿爬取下来制作成电子书,读着读着我发现其实里面的typo还挺多的,于是我想啊,在github上建个repo,大家一起来完善这些文稿怎么样?想了一下,这件事最好还是由mkennedy来做比较好,回复了一个,没想到Michael回复得还挺快:

posttranscriptsongithub

所以你可以在talk-python-transcripts看到文稿了(我是第一个star的嘿嘿),如果对文稿进行了改进,pull request 吧。