gems

爱死gems了

很多年前爱上java的时候别人问我java有什么好,我说标准库比较丰富,网络,多线程,数据库都是内置的。当时觉得java比c/c++好用多了。而且觉得java就是最好的语言。

工作以后重心逐渐转到了matlab,感觉更好。很大的一个好处就是类库很全,特别是科学计算方面,要什么有什么。

最近几年陆陆续续用ruby,还有rails。标准类库也很丰富。但是最大的好处是安装第三方类库super easy。只要个gem install。有了bundler和rvm世界就更清爽了。而且感觉第三方类库相当丰富。整个community非常活跃,而且前卫。最近搞个网站,自己提出的公司项目。内容方面早就想好了。但是我的弱点是没有前端的经验,比如ui。另外,一直也没有时间试过用户管理。看过rails tutorial,但总觉得很复杂,得安静的好好花个一天才能把整个东西搭好。而一天的时间是没有的。老板可不希望看到我花整天整天的时间搞pet projects。我每天只能在下班前一个小时到半个小时花点儿时间,边学习边搞。好吧。感谢主。这两个问题在rails里面只要装个gem就只需要十几分钟搞定。酷的令人发指。ui,可以用twitter bootstrap。用户管理,登录,注册什么的,用devise。就像傻瓜相机一样。要拍照么?按一下键就好了。要弄个带用户的网站么?用rails+bootstrap+devise。三分钟把网站搭好。

以前喜欢java的时候觉得java已经到头了。现在用ruby和rails,感觉java就是个笨重的大卡车。就像当年站在java上看c++ ,或者,是看汇编。

Advertisements

小孩的宽恕

上次看蒙特梭利的《童年的秘密》,里面有一个观点,就是小孩不断的原谅成人,小孩才真正是成人的老师

昨天的印象尤为深刻

父母对小孩发脾气,小孩虽然开始会大声地哭,也会生气,但是她总是能很快地原谅父母,主动的和父母和好。很快也能把这些事情给忘掉。

而成人总是很难做到这一点。我们会轻易的宽恕一个人么?当一个人对我们不好,我们不总是怀恨在心,伺机报复么?

成人一遍又一遍的要求小孩承认错误,要求小孩改正。可是什么时候愿意自己承认错误,什么时候自己主动改正过呢?

成人一次又一次的伤害小孩,什么时候道歉过呢?

数据分析

发现现在不管弄什么程序基本上都要用到这个

前两天写了一个pdf auto crop的程序。对每个页面的text margin做统计分析,找到最合适的margin。然后根据这个margin对每个页面进行裁剪。主要是为了在kindle上看pdf。

一两个月前对图像进行逆向工程。也用到了统计分析。

再说类似readability的技术,也是统计分析。

刚才想到的ip cam image alert的过滤,需要相似度分析和时间轴统计。

最近工作上弄得推荐算法更是纯粹的数据分析了。

也许以后所有的程序都会融入一些数据分析在里面。

为什么需要呢?

因为可以提供更智能化,更高效的服务。

比如git,如果敲错了一个命令,它会问你想执行的是不是另外一个命令。非常人性化。

google, siri这些都是数据分析的服务。

以后数据分析的web service,company也会越来越多。比如百分点。

而弄数据分析的话,按经验来说,必须得使用matlab这样的工具。先搞算法,再实现到低级的语言。

 

一个新的想法

最近又弄了个wansview,之前是foscam。自从老爸来了以后,每天email里面出来的alert都有几十条,因为老爸总在屋子里活动。基本上都直接删掉了。

如果将来再弄几个ip cam更加不得了。信息超载的厉害。

今早洗脸的时候冒出个想法。可以自己写一个过滤器。把这些alert email全部抽取出来,进行处理,以更方便的形式推送给用户。

1. 可视化。用户点击页面,直接出现所有的图片。第一层是小的图片。

2.通知中心。做个chrome插件,或者mobile app。自动实时显示未处理alert的数目。类似于google plus那个红色的数字。

3.自动分类。先根据时间。然后根据以往的处理经验,把相似的曾经被标识为no event的图片自动标为no event。

4。用户可以删除图皮。但是系统不删除。

以前想弄个硬件应用,那样成本还是比较高。这么搞的话,用户成本可以弄成零。然后可以根据服务收费。

肉体是寄居苦毒的地方

有一次牧师讲道,说得了癌症的人会死亡,因为癌细胞的扩散和猖獗。但是一旦肉体死亡了,癌细胞也都不复存在。

耶稣说丢弃生命的才能得到生命。

圣经又再多处提到要治死你们在世上的身体。

圣经的一个核心教义是死而复活,得新生命。一个信主的人就是敞开自己的生命,让神住进来。让圣灵来掌管。丢弃老我,生长新我,一个馨香的生命。

但是,即使是信主的人,又如何能轻易的脱离旧生命的摆布?

这个礼拜要接着第三次带查经,约翰福音17章。里面有很多的主题。

这一章是耶稣在被捕前的祷告,为自己,为门徒。他在临死前到底为门徒祷告了什么?

不求让他们离开世界,但求脱离凶恶。求他们合一。求他们寻求真理成圣。求他们心里有神的爱。

每一点都能单独讲很多。但是他们其实都是相关的。

耶稣说不让他们离开世界。也就是说要保留自己的肉体,同时也要入世。既要住在肉体里面,也要住在这个败坏的世界里面。

为什么接下来求脱离凶恶,为什么要求合一,为什么求成圣,为什么要求神的爱?

以我的猜测。可以反过来理解。

既然住在肉体里面,既然住在这个败坏的世界里面。就难以脱离凶恶,难以合一,难以成圣,难以领受神的爱。

耶稣是否早就预见,或者早就知道这一点?

这次带查经会重点让大家讨论一个问题,家庭的合一。

在这个世界上。家庭的合一是困难的。美国的离婚率有多高?中国的离婚率又有多高?搜索离婚率,第二条,北京离婚率50.9%。

还有婆媳关系。

合一为何如此之难?今天突然明白,因为肉体是寄居苦毒的地方。

苦毒就像癌细胞,死不掉,还会不断扩散。它会慢慢吞噬我们的生命,吞噬我们的情感。破坏家庭的合一。

那么怎么办呢?唯一的办法就是治死我们的肉体。

如何治死呢?耶稣在后面的祷告说让神的爱在我们里面。让我们在神里面,让神在我们里面。

到底该如何理解,如何行呢?

今天找到了一个词。那就是到空。

我看到一个漏斗,或者是一个没有底的杯子。

当苦毒进来时,我们要让他流出去。而不是继续留在杯子里面。

忘掉苦毒,让苦毒过去。

只有当苦毒流走了,神的爱才能进来。

只有如此,我们才能合一。

可是,如何能让苦毒过去呢?

understanding,理解。

上周我带的主题是认识神。认识这个词在圣经里面出现过172次。有很多的意思。其中一个意思是理解。

圣经说人人都是罪人。站在这个角度就不难理解了。

除了理解,还有一个关键,那就是宽恕。耶稣在另一个主祷文里说,免我们的债,如同我们免人的债。

每个人都犯了罪,但是耶稣免了我们的罪。我们就更应该免人的罪。

可是宽恕又谈何容易。如果没有爱,如何能宽恕呢?那么如何爱呢?

圣经说,爱是恒久忍耐,又有恩慈。

圣经的一条核心教义就是不要以恶胜恶,到要以爱胜恶。

合一的家庭多么美妙。

还没有说到的是成圣。其实这个更直接一些。圣,又做圣洁,还有公义。一个人如果不洁,怎么可能带来家庭的合一呢?一个人如果不义,如何能带来团队的合一呢?

家庭的合一就是神荣耀的彰显。让世人认识神,接受神。

 

机会和尝试

昨晚睡觉的时候脑子里总是浮现那个射空门没进的场景,心想如果射进了该多好,机会多好

今天开车上班的时候突然明白一个道理

无论错失了多少次机会或者做错了多少次,只要进了一个球,就会很开心。那些没成功的带球或者射门都会忘掉。

人这一辈子也是如此,无论失败了多少次,只要有一次成功,那就会很开心了。失败都会忘记。

其实只要不断的尝试,机会就会越来越多,总能把握住一个机会。每次踢球总能进球的哥们儿,其实每次不知道浪费了多少机会,而且不知带了多少不该带的球,射了多少不该射的门。

当然,还有一个关键,就是得呆在前场,可以偶尔回来。但是一定要经常跑到前场,以及门前。否则机会少之又少。我每次都大部分时间打后卫,守在门口前面。进球的几次都是经常跑到前场。

跟别人打工就是当后卫,无论救了多少球,大家也不会惦记。一旦丢了一个球,就会成为罪人。而自己创业或者跟别人一起创业就是当前锋,打前场。失败了多少次,大家都不会惦记。一旦有一次成功了,。。。。

所以呢,要不断地创业,直到成功为止。

 

水库,管道和终端

三位一体

以前大家都跑到河里挑水。有了管道和水龙头后,只要在家里一拧,水就会出来。

互联网就是一个大水库,但是以前没有管道,终端也就是PC,就跟水桶一样。

blog的出现不仅仅是给每个人提供了一个简易的私人水库,很重要的一部分还有rss

rss是管道的雏形,很快有很多阅读器出来。它们就是终端。

rss提供了机器可读的数据。数据因此可以在水库和终端之间流动。

但是rss是静态的,单向的,而且只有一部分数据。

api更进了一层。提供了真正双向,高效,标准的管道。

近年来火爆的应用,都围绕了水库,管道和终端这三方面。

twitter,evernote,instapaper,read it later提供了水库和管道,还有终端

flipboard提供了新的终端。

几乎所有的终端,或多或少都连接了一些管道,用于分享,保存。

kindle也是终端。还有手机。

如果没有管道,水库的作用就会受到限制。

另外,管道对数据处理工厂也是必需的。

siri就是一个实时语音处理工厂。

以前的工厂是在本地,是一个类库。

现在的趋势是,工厂在云端,是一个服务。api提供了数据输入和输出管道。

 

zite

好吧,越来越喜欢ipad了

以前不明白为什么软硬一体化很重要,现在明白了

iPad作为硬件是没有话说的,字体,颜色,大键盘,简单的设计,手势驱动等等

但是真正让人慢慢爱上它的则是通过里面优秀的软件

比如Zite和Flipboard,特别是Zite

Flipboard的demo很早以前就看过

但是看过跟用过区别真的很大,很大很大

那种体验在其他地方是找不到的,在pc上找不到,在laptop里找不到,在web里找不到,在kindle找不到,在印刷精良的传统杂志里也找不到

完全是一种崭新的体验,无与伦比的体验

让人觉得愉快

到底是什么地方让人觉得愉快呢?

1.排版。在传统的web里面,基本上都是list。大部分是文字。而Flipboard则是窗格,大量的图片。窗格是否一定比list好?取决于硬件媒介。我不认为把这种窗格式排版放到web里,用pc来看会比传统的list舒服。而且。。。

2.交互。传统的web一般是一个单页面显示大量的信息。而Flipboard则是回归传统–分页。不是上下拖动,而是左右翻页。上下拖动现在想象起来真的很可怕,很可怕。就像一条长长的裹脚步。每次只能看到一小段。然后不断的拖啊拖。老爸学鼠标就学了好久。

3.硬件。也就是iPad。拿着iPad阅读跟看着电脑屏幕阅读的姿势,身体感受,精神感受完全不一样。跟iPad比起来,看电脑屏幕基本上就是一种折磨。

还有第四点,用 Zite来说吧。也就是内容。

很早以前听说过Zite,知道智能推荐是一大特点。Google reader以前的推荐也用过。但是Zite的内容还是让人大吃一惊。真的很不错。有了Zite跟Flipboard,感觉上就不用看其他的新闻了。Zite是怎么做的呢?它怎么开始的呢?中文世界有类似的应用么?

内容内容内容。在信息爆炸的时代,推荐,过滤变得尤为重要。

好吧,我来搞搞中文吧。iPad应用似乎是必不可少的了。Zite,Flipboard有网页应用么?

公司就是一个运行着的object instance

每个公司都提供了一套api

它是内存池里的一个对象,跟其他的对象进行交互,提供服务,使用别人的服务

作为个体,我们使用公司提供的服务来解决我们自己的问题

公司使用别人公司的服务解决他们的问题

公司提供服务帮别人解决问题

比如昨天给我做health exam的公司

苹果公司的api是Device purchaceDevice(int cash, int deviceType)

从这个角度来说,整个社会就是一个大的运行着的软件系统

当然,或者说是一个生态系统