写点什么

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:482681
用户头像

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

关注

评论

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

Spring 5 中文解析测试篇-Spring测试

青年IT男

Spring5 JUnit

甲方日常 8

句子

工作 随笔杂谈 日常

深入理解JVM垃圾回收机制 - GC Roots枚举

Skye

GC Roots枚举 安全点 安全区域 OopMap

阿里巴巴发布国内首个公益区块链标准 用技术让公益公开透明

CECBC

区块链 公益

Go: gops如何与Go运行时交互?

陈思敏捷

gops Go 语言

程序的机器级表示-数组的分配和访问

引花眠

计算机基础

实战解读丨Linux下实现高并发socket最大连接数的配置方法

华为云开发者联盟

Linux TCP socket 高并发

给DevOps加点料——融入安全性的DevSecOps

禅道项目管理

DevOps 运维 测试 开发 安全性

不支持原子性的 Redis 事务也叫事务吗?

大头星

Java redis 事务

3. 站在使用层面,Bean Validation这些标准接口你需要烂熟于胸

YourBatman

Hibernate-Validator Bean Validation 数据校验

透彻理解AQS源码分析系列之AQS基础二

InfoQ_d2212957090d

拥抱K8S系列-05-基于docker部署面临的问题

张无忌

Docker 运维

用函数式写法精简Java代码的一个例子

Sean

Java 函数式编程

ARTS打卡 第15周

引花眠

微服务 ARTS 打卡计划

oeasy教您玩转linux010206 蒸汽机车 sl

o

有奖征文重磅来袭,来!一起玩把大的!

有只小耳朵

2020-09-03-第十三周学习总结

路易斯李李李

从湖南“软硬兼施”,管窥三湘水畔的智能浪潮

脑极体

读后感之《任正非:以客户为中心》

王新涵

学习 Java,有什么书籍推荐?学习的方法和过程是怎样的?

沉默王二

Java 学习 程序员 书单

握草,你竟然在代码里下毒!

小傅哥

Java 程序员 小傅哥 bug 有毒代码

Golang Package sync 透析

卓丁

sync Go 语言

[翻译] Go Concurrency Patterns: Pipelines and cancellation[Go并发模式]

卓丁

channel pipeline

你问我答:容器平台改造后的安全是如何解决的?

BoCloud博云

云计算 容器 微服务 PaaS 博云

商业通识 : 商业为什么能进步?

Walker

学习 得到 个人成长 商业

ARTS Week15

时之虫

ARTS 打卡计划

给大家介绍下,这是我的流程图软件 —— draw.io

程序员小航

工具 流程图 draw.io drawio-desktop 画图软件

翻转链表,机器学习视觉训练,对数据的人工标注,使信息丢失,John 易筋 ARTS 打卡 Week 16

John(易筋)

大数据 学习 ARTS 打卡计划 翻转链表 Google论文评判人工预处理

一点思考|工作十几年了,竟从未用过do-while!

王磊

Java

LeetCode题解:239. 滑动窗口最大值,单调队列,JavaScript,详细注释

Lee Chen

大前端 LeetCode

架构师训练营第十三周总结

张明森

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