代码工匠

Walking The Long Road.

Qcon见闻

第一天

之前在并发编程网http://ifeve.com发过两篇关于netty的文章,就混进了编辑群,正好群主有两张Qcon上海的票,我又刚好在上海,就拿了一张票,请了天假,奔赴现场了。

会议人依然很多,各个赞助商都在门口签到发送礼品,领了两个娃娃,正好给女儿。不得不说七牛在社区方面的工作还是很到位的,娃娃做的很用心,还送了一件挺不错的T恤。

toy

上午的keynote全部是英文演讲,虽然来的都是twitter、github的大牛,但是演讲内容太泛,除了瞻仰了风采之外,收获不算很大。twitter讲到了他们的RPC框架finagle,倒是可以研究一下。twitter的开源项目还是很受欢迎的,既有bootstrap,又有storm,这个finagle应该也不错。

下午奔了几个会场。阿里外贸讲前端优化、SEO以及CDN中遇到的坑,感觉挺不错,都是宝贵的经验。豆瓣讲到自己的工程师文化,讲到工程师自发的维护code平台,自下而上的工具开发论相当不错。有个观点很新颖:团队工具最好由开发自己维护,不要用专人去负责,否则负责人为了刷存在感,总会开发些不实用的功能…

code平台晚些会开源。

听了几个报告,感想:其实所有技术人都有一个开源梦,极少数真是想藏着不给人看,多数是因为没有精力将代码提高到可开源水平(依赖内部工具、耦合业务代码、文档测试不全、代码质量不高)。开源对于公司来说,确实成本不小,在国内除了积累声望外也没有什么回报(极少有人反馈代码)。


第二天

今天上午处理一些公司的事情,没有去成,错过了安全方面的讲座,挺可惜的。

Apache Traffic Server

下午第一个听了阿里CDN团队的永豪对于Apache Traffic Server的讲解,偏运维方面,好多东西不懂,不过倒是知道了ATS这个东西。ATS采用多线程+事件机制,默认支持集群,比起nginx倒是方便了很多。阿里CDN团队还出过Tsar。他们在尝试将配置用lua实现(remap),估计日后会合并到主干。可能在很多人眼里运维就是配一大堆配置文件的人,看日后会不会有改变。阿里在开源方面真算是走上了正轨,积累了业界声望,至少在我看来对于招收人才是非常有利的。

深度学习

第二个听了百度IDL的首席科学家张潼带来的深度学习的介绍。其中细数了机器学习在企业的应用,干货挺多,至少对于我这个外行更是如此。大数据在企业分为三个方向:

  • Infrastructure

    数据研究的设施,像hadoop、storm、spark均属此类。也包括把数据拿到CPU/GPU上计算。

  • Data analysis

    数据分析,建模、算法,参数调优等。

  • System intergtation

    系统集成,最终将机器学习的结果整合到产品中,产生商业价值。

百度的机器学习主要用于CTR预估和语音以及图像的处理。百度的广告数据已经达到了千亿规模,用的是Logistic Regression。而图像和语音用的是深度学习,深度学习的精髓是最接近人的大脑,同时它可以从最原始的特征选择出最上层的特征,学习越多越抽象,而且这个最上层的特征通常是有意义的。这样同于特征提取,可能在一个星期内就完成人工十年都做不到的特征选择工作。百度这方面做的挺不错的,据说图片匹配已经超过google了。

还有些分布式方面的内容,包括CPU与GPU的区别和任务分配模式,需要时倒是可以了解一下。

Java 8

作为一个Java码农,不得不说Java8,于是去听了Oracle专家带来的J2SE的55个特性的讲座。当时顺便开了IDEA,边听边试,岂不快哉!

说到Java8先说Lambda,关于Lambda我写过一篇博客,我觉得报告中有个说法很对:Allow you to treat code as data. 在VM层级是使用invokedynamic机制实现的。http://cr.openjdk.java.net/~briangoetz/lambda/lambda-translation.html

另外并发方面支持Fork-Join了,集合类都增加了并发支持,有人说Java8是抄scala的,感觉倒有那么点意思…

Moco

Moco这个框架之前就关注过,因为自己也计划写一个类似的东西。作者郑烨@dreamhead是个35岁的大龄码农,倒是挺有亲切感。Moco之前有说过,就是用Mockito的语法和JSON配置来实现一个webserver。后来拉了代码看了一下,作者是个与时俱进的Java Coder,用了guava/netty4.0/gradle等新玩意。

作者写了10年博客,有个《你应该更新的Java知识》系列,可以去搜一下。

有趣的时晚上报告的时候,与作者刚好坐到了旁边,但是反而不知道说什么了,码农嘛,有点不善言辞。

鬼脚七夜话

鬼脚七夜话是晚上的座谈活动,实际上比起白天的报告,这个收获更大一些。最大的收获是学到了角色时间管理法。还有就是也了解了几个微信公众号,有点意思。鬼脚七说自己的经验是每天坚持写自媒体,写一年半年试试。想起当初自己写webmagic时29天的连续strike,还是挺有感触的。

还有一个就是大牛一部分是技术,一部分是吹出来的,感谢蔡学镛独到的见解。

晚上跟朋友谈起Java8,引出了函数式编程的话题,然后就被推荐学学Haskell。函数式编程有不可变对象和函数组成,有点意思,研究一下。


第三天

第三天宝宝生病,去了趟医院才来。第一场听了鸟哥的Yax框架。我是鸟哥的粉丝,报告非常技术,符合技术人员的特质。

下午的讲座就比较泛泛,不是很喜欢。虽然有鬼脚七和蔡学镛的讲座,但是比起前一天的鬼脚七夜话,各方面都差远了,感觉就是来宣传的。google glass的现场demo倒是有点意思,google glass2出了,支持近视眼镜,以后便宜了可以入一个。

就这么多了,结束的时候稍微有点失落,不过补充了码农的能量,可以继续下去了。

Add a comment