All Stories

Nginx上安装Wordpress

自从知道nginx后,就再也不愿意用Apache了,总觉得Apache配置复杂、体积笨重、运行缓慢,当然这些只是我的无根据臆想。原本用nginx只是用来做静态站,做反向代理,今天zhangh说想要个Wordpress做产品展示页面,于是只好弄一下。顺便感叹一下他的执行力。

《沉睡魔咒》

周日去电影院看了《沉睡魔咒》。本来打算周六去的,结果相当不愉快的一次网上订票,先去大众点评网上买了两张团购券,还以为每张可以便宜7元钱,结果到嗨电影网上订票还要再付12元,也就是说每张票才便宜了1元钱,还花了一些时间折腾微信支付什么的,我只能说这两家网站的用户体验做得很烂。而且当时没订票成功,我又看手机上收到了两条短信以为已经订票成功了,其实是大众点评网发来的,于是兴冲冲跑去电影院,然后妹子发脾气了,关在卧室里整整一个下午。叹气。

项目进展

Yiili和MiaoCoffee是基于同一个codebase,目前的区别主要在描述性文字等周边部分。现在Yiili和MiaoCoffee都算正式上线了,之后的工作重心就在运营上了。MiaoCoffee的运营我肯定基本上是不管的,那个其实不算我自己的项目,我的主要精力将放在Yiili上,Yiili上我才有绝对的控制力和话语权。总的说来,我也只是因为有Yiili才会顺便花点时间给MiaoCoffee做些技术支持工作。我在人脉方面几乎没有任何基础,所以很难直接拉些人来活跃气氛。于是我想着前期只能自己生产些内容来吸引流量了,而内容生产是件不容易的事,对我来说有两条路可以走,一是找那些还算有交情并且交情还不错的又在某方面的知识掌握得比较多的朋友,请他们偶尔抽空写点两三百字的超短篇,再配张图就算是图文并茂了,二是从国外找内容自己翻译。前者产量极不稳定,后者产量要稳定得多但要占用大量时间。除了通过生产内容吸引流量外,另外我想到的一个也许效果并不怎样的办法是同步SNS,比如微博,微信等等。等项目起步后,就可以开始考虑推出移动app了,这样既能显示专业和认真,又能降低使用门槛和提高用户体验。大体思路就是学v2ex那样通过技术手段来弥补一些资源上的不足。

被第三方库接口变化给坑了

Yiili论坛程序是从wetalk改过来的,所以是用了beego这个Web Framework的。前两天Beego从1.2.0升级到1.3.0,有一个用到的接口被删了,用另一个新增的接口替代,于是Yiili就编译不过了。其实据说这个被删掉的接口已经有3,4个版本标记为deprecated了,只是我才接触beego差不多1个月,所以肯定不会知道这回事的,于是即使自己照猫画虎地尝试修改,即使能编译通过了,运行也仍然不正常。Beego的官方论坛上也有人在喊这个问题,一直到第二天,Beego的作者astaxie大概实在受不了人的呱噪,直接把wetalk的不兼容代码给改了。这次事件给我的感觉非常不好,还跑到Go的中文邮件列表去问遇到这种第三方库接口变化引起不兼容的问题该怎么解决。结果有人说,官方的做法是把第三方库在自己的代码库里copy一份,唔,这是我最不喜欢的做法,像svn external,git submodule不都是为了避免这种做法吗!但是go get不支持版本,所以是没办法做到的。还有人提出个我觉得还能接受的办法,在GOPATH里加3个路径,第一个专门放go get取下来的第三方库,里面的东西随时可以删掉,第二个专门放被自己修改过或认为是stable的第三方库,可以保证自己的项目能编译通过的,第三个专门放自己的项目代码。

被GCC坑了一把

前几日在重构一个小模块。这个模块的架构本来就很畸形,因为它被要求在不同的设备不同的平台不同的endpoint上运行不同的逻辑,却要做在一个模块里,能给用户一个.a或.lib就可以使用。于是第一版的实现中就有一个变量来区分当前endpoint是哪个,开始还好,后来越来越多的if条件判断endpoint来运行不同的逻辑,代码就丑到令我觉得恶心。于是我就蠢蠢欲动了好久,最后看重构的工作量也不是很大,就跟design这块的小leader打了个招呼开始重构了。

国内的环境真是恶劣啊

最近又被结结实实体验了一把国内的恶劣的网络环境。两件事情,一件还是说之前那位同事要搞个社区,域名备案的问题,用了阿里云的主机,然后说已经准备齐全了各种材料去备案,已经快递到了河南省内某处,过了大概快3个星期了,前几天他跟我说收到那边的消息,说还需要大概20个工作日才可能会给他进一步的是否备案通过的消息。我表示只能呵呵了,这么搞真的有意义么有意义么有意义么?

近况

忘了从何时起,就不太乐意写blog了,一直在长草。前两天从知乎网友Jim处扒来一个非常简洁明快的Jekyll theme,于是打算写点文字除除草。

使用qterminal替代LXTerminal

发现FreeBSD上的LXterminal很容易在输入长命令时换行错位,于是胡乱覆盖掉前面的内容,就很难好好地输入完一整条长命令。这事在Debian上没遇到过,我也只在Debian上装过LXDE并使用LXTerminal。其他在Linux上用过的Terminal也只有GNOME Terminal和Mate Terminal,感觉吧每种Terminal都是配合自家的DE的,虽然可以混用但心里总是有点疙瘩。

旧版本Protobuf在Serializing方法crash

花了几天时间,把原本基于XML的IPC重要部分都改成用Protobuf了,之前以为会大幅度提高运行效率,结果发现原本用RapidXML库生成消息,比填充Protobuf结构慢不了多少。不过可以肯定的是,消息长度缩短为差不多是原来的1/4了,原本16KB左右,之后4KB多点。