产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

PyCon US 2013 回顾:从 API 设计到一个笑话引发的风波

  • 2013-04-18
  • 本文字数:1521 字

    阅读完需:约 5 分钟

  1. 更好的 API 设计

Python 的 14 行诗不应该被忘记,你需要经常在项目中回顾是否真正的践行了这些原则。作为 Requests 的作者, Kenneth 重申了“ Python 的哲学”,并从 Python for Humans 出发分享了自己的实践经验,告诉大家如何构建强壮、优雅的 API。如果我们回顾自己的编码历程,一定能够发现很多值得吐槽的地方:“为什么要这样写?”,我们在学习、使用和适应这些不佳设计的同时浪费了大量的时间和精力,最主要的是这些不人性的设计将会消耗你对 Python、对编程的热爱。因此,当你遇到类似的问题时,停下来思考是否可以有符合 Python 哲学的更好的设计,这将会让整个过程更快乐!如果你期望得到一些其他实践的经验,也可以查看这里
2. 让数据说话

无论是和癌症做斗争,还是为儿童读物测量和建模亦或是对音乐数据的分析,你都可以看到 Python 的身影。不过可以发现的是,在分析工作中,Python 只是一门工具,我们需要把视野放到如何让数据去说话上。来自 Github 的工程师以结合项目中实际搜集到的数据,分享了他们的数据分析经验,他们按照“获取、解析、过滤、挖掘、呈现、提炼、交互”的流程,从“数据转化为信息”、“挖掘信息意义”两个方面来做说明。

你也可以学习到如何掌握一些常用的数据分析类库。如果你对数据分析中的一些基本原理或实现感兴趣,可以查看对贝叶斯统计模型的相关讲解。
3. 为了程序的健壮性

程序员就是一帮与逻辑打交道的人,我们会犯很多基本的逻辑错误,它们会把你引向了一条死胡同,你需要适时的加入测试,让错误更快的暴露。使用 Python 写测试也从来不是一件特别费力的事情,当然,第一步是知道如何按照正确的方式开始写测试,之后采用一些技巧和工具将会让整个过程健步如飞。

同时为了保障程序的健壮性,我们还需要在代码中适当的捕捉异常和错误。在 Esther Nam 的演讲中,她分享了 Python 捕获异常的方式和方法、基本原则,最后她也提到了防御式设计,你可以通过 ihower 的这篇文章做进一步的理解(注:shower 是 Ruby 流)。
4. Python!Python!

关于 Python 自身的发展是每次会议的一个重要组成部分。Guido van Rossum 作为 Python 社区的领导人物,分享了他对 Python 语言发展的想法,这次的话题围绕Python 3 的异步I/O 特性展开。就语言的细节来说,在本次PyCon 会议上,你可以了解到Python import 的具体工作原理以及一些你所不了解的一些扩展模块的缺陷。如果你对代码分析有兴趣,可以查看一些推荐的方式
5. 他山之石

Netflix 不仅仅是开源领域的积极分子,在这次的 PyCon 大会上,他们还分享了自己的 Python 使用方式,包括 Security Monkey、Chaos Gorilla、监控报警系统等内部工具。

近日,dotCloud 开源了他们自有平台上的关键组件 Docker 。在 PyCon 现场,dotCloud 的工程师也做了一个简单的演示来展示这款 LXC 的易用性。

而来自 Instagram 团队的工程师则从一场实际的事故出发,分享他们是如何从每天几千个请求逐渐成长为可以顶住上亿请求的可扩展系统的历程。
6. Django

Django 可能是 Python 程序员使用最多的框架之一。在这次的 PyCon 会议中,你可以学习如何定制Django Admin 、正确实现 i18n 的支持、如何管理资源,同时,你还可以学习到如何使用 Chef 来自动部署 Django 程序、结合 Mozilla Persona 来做安全认证等。
7. Ok, Beginner

好吧,初来乍到的新人们,Python 绝对是对初学者友好的语言,是不是已经跃跃欲试了?PyCon 也提供了初学者教程,你可以通过一个具体的项目来快速入门。要提醒大家的是,一定要在学习的过程中通过一些方式及时对自己的学习进度做测试。
8. 意想不到的事情

当然,这次的大会也有很多意思的演讲,例如这位工程师十年如一日使用语音写程序。不过,最吸引大家眼球的还是 PyCon 上的一个笑话引发的“风波”

2013-04-18 06:482224
用户头像

发布了 89 篇内容, 共 32.1 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

面试官为什么会问你,如何设计一个高并发系统?

老大哥

Java 程序员 后端

商业通识 : 商业从哪里来?

Walker

学习 得到 个人成长 商业

What's new in Dubbo-go v1.5.1

apache/dubbo-go

dubbo 服务端 Go 语言

Spring 5 中文解析核心篇-集成测试之TestContext(上)

青年IT男

单元测试 Spring5 JUnit

市值做市机器人,操盘做市系统搭建

Java服务,内存OOM问题如何快速定位?

老大哥

Java 程序员 后端

关于二进制的补码,反码,正负数表示以及Java代码测试

Zexho

Java 补码 位运算 反码 计算机知识

架构师训练营第13周作业

服务化反面案例

心平气和

服务化 权限

“新基建”与“双循环”的二重奏:2020服贸会靠什么推动经济复苏

脑极体

用技术的“信条”,开启AI to B的产业位移

脑极体

我的大厂面试经历

老大哥

Java 程序员 后端

架构师训练营第 0 期第 13 周作业

无名氏

Hessian Bug修复

心平气和

php 序列化 hessian

第十三周作业

olderwei

极客大学架构师训练营

架构师训练营第十三周作业

张明森

[翻译]Go Concurrency Patterns[Go 并发模式]

卓丁

Rob Pike Go Concurrency Patterns Concurrency Go 语言

甲方日常10

句子

工作 随笔杂谈 日常

从用户输入手机验证码开始

架构师修行之路

架构师第十三周作业

傻傻的帅

架构师

没想到 Hash 冲突还能这么玩,你的服务中招了吗?

老大哥

Java 程序员 后端

第13周 作业

Jaye

模板方法模式——看看 JDK 和 Spring 是如何优雅复用代码的

简爱W

Java 程序员 java架构

架构师训练营作业(大数据与机器学习)

qihuajun

Flink通过官网创建自己的工程-20

小知识点

scala 大数据 flink

阿里P8忠告:这些技术,哪怕不用微服务架构,你也应该会

小Q

Docker 架构 微服务 springboot SpringCloud

【真实面试经历】我和阿里面试官的一次“邂逅”

老大哥

Java架构师JVM启动流程和内存结构,程序员必看!

老大哥

Java 程序员 后端

工作好多年有可能还未真正了解接口和抽象类

架构师修行之路

接口 抽象

架构师训练营 - 第 8周命题作业

红了哟

大厂面试题:集群部署时的分布式 session 如何实现? 面试官心理分析

老大哥

Java 程序员 后端

PyCon US 2013回顾:从API设计到一个笑话引发的风波_Python_水羽哲_InfoQ精选文章