有效时间

  近年来去学了一些技能,比如钢琴,车,最近又在加深英语学习,每天至少要花一小时背单词看新闻,学习时也算认真,也有收获。但突然发现,这些东西有些自欺欺人,把自己显得很上进的样子,去掩盖主业的停滞,这些边缘技能,应属于画龙点睛,如果说做完这些大脑释放了“嗯,学了这么多,该让自己休息休息”的信号,那么就喧兵夺主了。有效的主业技能精进时间不能省,如果说要学习边缘技能,那必须要承受更多的精神付出,而不是替代。
  现在是信息爆炸的世界,太多东西会吸引你的注意,一个空暇间去摸了手机,上了微博,哪怕上了知乎,很有可能你...

从零开始

  距上一篇博客已有两年半,由于事业的变动,生活的压力,年龄的增长,人变得越发世俗,不再像过去一样,埋头钻研着技术,沉浸在技术的海洋。
  回忆起当年那股朝闻道夕死可矣的冲劲,再反思当下的所作所为,真是羞愧难当。这两年技术有多少进步,说不出个大概,我甚至怀疑自己是否退步了,当初每每看过去的代码,总觉得以前的代码好烂,恨不得重构之,而如今看过去的代码,却感叹我是否能再写得出。
  再回忆那时的艰辛,初入社会,微博的收入,总为服务器域名费用发愁,平时也是能省则省,日子过得捉襟见肘,可思想丰富,精力旺盛,创意灵感...

使用Go语言代替node.js实践

  使用Go语言到生产环境已有半年,其优秀的性能,内存管理及便利的Goroutine让人爱不释手。Go在语法上比较保守严谨,因此代码的正确性有很大的提升,但也使得其代码量上远远多于nodejs+CoffeeScript组合。
  之所以使用Go语言,直接原因是node.js在一个日1亿多次ajax请求同时1万websocket长连接的HTTPS服务端在内存上有类似泄漏的表现。debug发现是在启用SSL后,废弃数组中大量faye-websocket对象积压,究其原因,可能是使用不当,也可能是应用设计上的缺陷...

Postfix排错记

今天打算安装Postfix到一台机器进行邮件的发送,SMTP通过sasl认证。配置完成后尝试发送邮Thunderbird始终返回

The mail server responded: 5.7.1 : Relay access denied. Please check the message recipient
Relay access denied。
main.cf restrictions部份配置为

smtpd_recipient_restrictions = permit_mynetwo...

面向转换,一种新的或复古的编程思想

最近想到一种新的或者说是复古的编程思想,说复古是Unix的管道思想比较大同,实现上与面向过程也比较类似。而说新的,主要是思想上不同,即非面向过程又非面向对象。
编程很多时候可以理解成数据到数据的转化,为此把思想重点放到数据的转换上,以下就简称为面向转换。
先举一个简单的例子:对于文件进行字频统计并输出。
面向过程:
文本 = 读取文件(文件名)
字频表 = 字频统计(文本)
打印(字频表)
面向对象:
文件Reader = 创建文件Reader(创建文件实例(文件名))
字频表实例 = 创建字频表...

ToffeeScript 1.6.2 发布

ToffeeScript
支持异步语法的CoffeeScript
特性
异步语法
条件语句: If, Switch
循环语句: For In, For Of, While with guard when
数值运算
逻辑运算:
自动回调
正则运算 =~ 与匹配项 \~, \&, \0~\9
支持 Sourcemap
当前基于 CoffeeScript 1.6.2
安装
npm install toffee-script
代码例子
左: ToffeeScript
右:...

对Gentoo的信心有些下降

自从几年前接触了了Gentoo就一直很喜欢,可是这两天遇到nginx的安装问题让人很是郁闷。
升级Gentoo的nginx到1.2.5,不幸遇到了bug,编译遇到错误为:
mv: cannot move `/var/tmp/portage/www-servers/nginx-1.2.5/image//usr/html’ to `/var/tmp/portage/www-servers/nginx-1.2.5/image//var/www/localhost/htdocs’:...

支持Socks5协议的高速加密通信的代理服务器脚本

支持SOCKS 5协议的高速加密通信的代理服务器脚本
代码地址:
https://github.com/jiangmiao/proxy
解决现有代理的问题:
1、vpn – vpn接管所有的数据,而在很多时更希望只通过代理访问部份网站。
2、http/socks – 仅使用http或socks代理,没有经过加密的关键词还是有被拦截的可能。
3、ssh+socks – ssh tunnel的socks性能与稳定性不佳。...

Android手机与互联网企业

  陆陆续续看了了三周的Android,一来可以学习Android的设计思想,二来可以顺应潮流或写一些应用。
  但学了Android后,发现了一些问题
  首先是兼容性,到处可以遇到deprecated,比如2.3的new Notfication()到4.0就deprecated需要用Notification.Builder等,不兼容随着平台发展是不可避免,特别是激进的Android,要解决兼容问题唯有尽可能让所有终端及时升级到4.0,同时系统要保持优秀的向下兼容,而两者Android都不尽人意。以当下A...

计算机与语言随想

现在编程语言大多是英语,而变量命名中有一重要建议是单词不用缩写除非约定成俗,否则会对他人阅读造成不便。
为此我一直想,同样都是单词,对于不认识的人是没有区别,控制器不管是叫Controller还是叫Cono。所以最好能有语言学家兼计算机学家能创立一套新的语言或标准,或许只有数百字根就可以描述90%的计算机所常用的单词。
微软过去流行过匈牙利命名,比如szName,iAge,这种命名法除了过于冗长,且无法发音。现在匈牙利虽然遗弃了,保持可读性下,著如NetworkException,FooController...