Nexus 6 使用体验

虽然一款去年发布的手机可能对大多数人都没新鲜感,可我还是忍不住写一篇,毕竟这是我第一款使用超过一小时的 Android 手机……

使用 Go 语言实现苹果推送通知服务客户端

注:本文拖了 10 多天了,因为被更想做的事吸引了,暂时没空补完了,所以先发个粗糙的版本吧。

因为刚学 Go 语言,自然得写点什么练练手。
之前自己用 Python 实现过比较简单的苹果推送服务(主要就是根据请求,构造并发送给 Apple Push Notification service),加上 Go 擅长服务器端编程,所以决定也写一个试试。不过整个服务依赖性比较大,这里就只做客户端的部分了。

Go 语言设计得还真敷衍

五年前 Google 推出 Go 语言时,我曾花了几小时的时间把它的语法粗看了一遍,总体感觉是比较乱。
可看到近来 Go 的好评如潮,我还是忍不住又重新学习了一遍。
给我的感觉是几乎每一个语法都没有好好思考,只在某些时候看上去不错,但另一些时候则非常不优雅。

我有特别的 Python 加密技巧

虽说 Python 代码的可读性很高,但你能读懂下面的代码么?
# -*- coding: rot_13 -*-

cevag 'uryyb jbeyq!'.rapbqr('rot_13')
嗯,它只是个 hello world 而已。

我有特殊的 Python 补全技巧

平时在用 Python 的命令行来调试时,由于没有 IDE / 编辑器的代码补全,总会觉得比较累。
受不了的人就用起 IPython、bpython 来了。可问题是装这些玩意得下载啊,如果只是临时用用,实在太不方便了。
还好 Python 自带了一个 rlcompleter 模块,几行代码就能解决这个问题。

Python 装逼篇之 Ellipsis

刚才无聊时折腾了一个高端大气上档次的等差数列生成器,演示结果如下:
>>> maker = ProgressionMaker()
>>> maker[1, 2, ..., 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> maker[6, 13, ..., 34]
[6, 13, 20, 27, 34]
虽然看上去很厉害的样子,但其实没什么技术含量……

用 Redis 存储 ID 连续的数据

之前在设计「Doodle 2」和开发「知乎日报」时,我面对最多的数据类型就是带 ID 的数据了。
在使用关系型数据库时,自增的主键可以满足这个需求,而在 Redis 中就稍微麻烦些了。

脱光了

大家好久不见,不过对某些知友来说,今天可能是我们第一次见面。
值此光棍节即将来临之际,作为一个有社会责任感的企业,知乎于今日举办了一场名为「迷失电影院」的线下活动。
作为现场唯一一位露脸的知乎工程师,我觉得我的角色可能是最不讨人喜欢的。如果有哪位知友着凉了,我先表示抱歉…

玩脱了

最近知乎发生了几件大事,想着好久没更新了,于是来久违一下。

« 看看还有什么好玩意