KuKu-一个 Weekend Project

一个小小的 Weekend Project,基于 web.py。 代码在 alswl / kuku ,很简陋,属于差不多能用阶段。

Kuku

基于以下原因开发:

  • 想把服务器去 PHP 化,以前的 upload.log4d.com 是基于 PHP 的, 详情请见 使用独立图床子域名
  • 刚买的 Linode VPS,终于从 128MB 内存解放出来了,赶紧放个 Python 程序跑跑。
  • 想些 Python 了,手痒,想看看写这么简单的功能需要多长时间, 弥补上次没能参加黑客马拉松的遗憾。

KuKu 的发音是我家乡话的「看看」。

KuKu 中比较有趣的地方是,用了 Foundation 这个流式 Web 前端框架 …

more ...

PyCon 2012 见闻

PyCon 是 Python 领域最著名的技术会议,从 2011 年开始,中国区开始举办自己的 PyCon 大会。这次 PyCon 2012 分成两个场地同时进行,北京和上海, 并且在网上提供同步转播,各地也有组织线下收看的。

PyCon Logo

去年时候我很遗憾的不能跑到上海来参加,现在我人就在上海, 怎能错过 Pythoner 的饕餮大餐呢?早就眼巴巴的买票准备参加了。

more ...

Working with Python subprocess[译文]

8月底到魔都开始新工作,头一个月当然各种忙,都没时间来更新博客。

这篇文章是在写 Btrace 脚本时候查资料看到的, 看着不错就顺手翻译,没想到差点烂在草稿箱出不来啊出不来。 熬了一个月才磨出来,媳妇都快成婆了有木有。

原文链接:Working with Python subprocess - Shells, Processes, Streams, Pipes, Redirects and More


注意

关于「执行命令时候发生了什么」这个问题,可以在 http://en.wikipedia.org/wiki/Redirection_(computing) 找到更多最新信息。这篇文章遵循 GFDL 协议。

在我的上一篇日志中,我写到如何 build a command line interface with sub-commands in Python。 这次我来尝试如何通过 Python 的 subprocess 模块来和命令行指令进行交互。

我想达到的目标是:

  • 查看当你键入命令时究竟发生了什么
  • 如何确认一个命令是否存在并找出到底在哪
  • 通过 Python 或 shell 执行命令
  • 向一个运行中的进程读取 STDOUT 或写入 STDIN
  • 检查进程的退出返回状态
  • 理解 Bash 在命令中断中扮演的角色,并如何将它们发送给程序
more ...

面试小记

最近在上海找工作面试,这两天就要出结果了。早晨5点多就醒过来,睡不着觉, 那就写篇这段时间面试感觉的小记。

选择

我在台风「海葵」登录上海那天离开南京,已经约好了几个面试, 这几个团队都是我慎重筛选的。招聘消息来源于各大社区: Python-CN 邮件列表 / V2EX / Ruby-China / 豆瓣小组。 来源于社区的招聘信息会更靠谱,在社区投递的很有可能是直接主管,而不是人事 HR。 仅仅在 51job 上投放招聘,而不参到社区来的公司,很可能氛围不是那么有活力。

more ...

我为什么来上海

今天是我到上海的第二天,窗外的台风依然在肆虐, 我用半天的时间来研究这几天要面试公司的产品。放下腿上的笔记本, 抽了根烟,我开始整理一下思绪,准备回答这么一个问题:「我为什么要到上海来?

南京有相对悠闲的生活节奏,开车回家 1 小时不到, 父母在毕业那年帮我购置并装修好了新房,工作也比较稳定。 那我为什么还要抛弃这些去上海?

回答这个问题,我需要从我的经历讲起。

more ...

《少有人走的路》读后感

关注这本书是在编程随想那里看到的一篇书评, 其中引用了书中一句经典的话:

人可以拒绝任何东西,但绝对不可以拒绝成熟。拒绝成熟,实际上就是在规避问题、 逃避痛苦。规避问题和逃避痛苦的趋向,是人类心理疾病的根源,不及时处理, 你就会为此付出沉重的代价,承受更大的痛苦。

所有逃避者,都在阻碍自己心智的成熟; 一切心智成熟者,他们的人生之旅都是从直面问题开始。

more ...

MoinMoin Wiki 转换 Text 脚本

我使用 MoinMoin 作为我的 KMS,具体使用方式可以参考 [使用MoinMoin作为个人KMS][moin-kms]。另外,我将 MoinMoin 的 data 目录链接到 Dropbox 同步目录下面,从而可以备份并查看我的知识库。

我想同步阅读 KMS 数据

想在移动设备阅读 KMS 数据时,我遇到一个麻烦,MoinMoin 使用文件来保存 wiki 数据, 比如「28个Unix.Linux的命令行神器」这篇 wiki 目录在 data/28(e4b8aa)Unix(2e)Linux(e79a84e591bde4bba4e8a18ce7a59ee599a8) 中, 结构如下:

more ...

学车记

经过两个月的学习,今天下午终于把驾照拿到手了。期间各种苦逼各种悲催顿感消失, 终于打赢了这场难度仅次于装修的战争。

博客也因学车而荒废了1个月,今天就顺便写点针对南京的驾校考试的东西。

南京驾照考试有4部分:

  • 理论考试,网上好好做题,2小时就可以考95分以上了,90分合格
  • 桩考,就是考倒桩。80分合格,当场有一次补考机会。
  • 电子路,2+1(侧方位停车、坡道定点停车和起步、起伏路、直角转弯、S 弯、 百米加减档、限宽门、单边桥和连续障碍),其中「侧方位停车」和 「坡道定点停车和起步」是必考,其他再抽一项。和桩考共享一次现场补考机会,80分合格。
  • 人工路:上车在实际道路开一会。没有现场补考,80分合格。
more ...

Flotr2 - 我最喜欢的 Javascript 图形库[译文]

原文地址:Flotr2 - my favorite javascript graph library

译者:alswl


我研究了很久,得到的终极数据可视化方案是 javascript + html ,这是唯一像样又好用的。

Gnuplot 虽然看上去不错,但是不太漂亮。 一些基于 Python 的图形化工具也有同样的问题。 Mathematica 在我看来则太正式了,所以我不怎么用它。

基于 javascript 的图形化工具其中一个巨大优势是易于共享。 通过设置 Github Page、分享链接等方法,我们都可以很方便的获取最新图表数据, 甚至可以进行交互。

那些基于 javascript 的图形化工具

有很多 javascript 图形化库,从极简到复杂绚丽的风格,都极为丰富。

最流行的可能就是 d3.jsRaphael 了。 他们用起来相当麻烦,但却能实现绚丽到超越你想象的可视化效果。

more ...

想和做

一年前,我在草稿箱里面写了这篇文章的开头,那时的我正在为工作而烦闷,却一筹莫展。 最近在读《人人都是产品设计师》,其中提到了「产品经理」和「项目经理」的区别, 又引发了我一些思考,我决定把这篇文章重新写完。


这篇文章准备讨论普通程序员在工作中容易滋生的错误,以及解决的方法。

传统意义上,大家会提倡「不能光想,还要去做」,即强调行动力的重要性。 而在实际工作中,大部分人都不缺乏这个行动力,反而缺少对自己工作的思考。 比如我为什么要这么做?有没有更优美的办法?能不能通过自动化减少工作强度? 流程是否可以改善?

我和产品

在聊上面几个问题之前,我先确定一个既有现实:「每个程序员都曾经是产品经理」。 诸位是否还记得当年在学校里面学习时候,应该都做过 XX 管理系统吧, 那时候我们也许单枪匹马,也许结对组团去完成「项目」:获取需求,设计系统和 撰写代码,在这些工作中,我们首先担任的就是产品经理一职。

more ...