2015 沪港 Hackathon

我想参加黑客马拉松很久了,去年就观战过 2014 沪港黑客马拉松。 但苦于需要连续两天时间,一直没有下定决心参加。

上周末本来安排了两天的团队会议,后来临时取消, 给了我充足的时间。于是我在 27 号周五下午,报名参加了 27 号晚上开始的 2015 沪港 Hackathon。

5D3_0001.jpg

more ...

读《遇见未知的自己》

「遇到未知的自己」这本书讲的是如何来认识自己,理解自己的情绪,和自己内心沟通。

遇到未知的自己

豆瓣链接 / Kindle 版本购买链接

下面我写的倒不是什么读后感,而是我自己去解决自己焦虑和压力的一个探寻过程,希望对你有帮助。

不完美

最近一年来,我生活和工作状态持续处于亚健康状态。表现出来的状况是:工作上对产出的成绩不满意, 对自己不够自信,追寻的目标(创业)变得模糊和不可量化;生活受到影响,开始陷入到哪里去的困惑。 很久没有兴奋的迎着早晨第一缕阳光蹦着下楼梯,人变得焦虑和烦躁。

这种压抑,让我回忆起小时候周日晚上动画片的结尾曲,昏黄、萧瑟,似乎一切都走向终结。 哈,好在我不是那么消极的人,我热爱生活,期望创造价值,渴望别人的认同, 我不愿意自己长期陷入这种低潮。

我做了一些尝试和挣扎:给自己添加束缚(变成一个“工作日素食者”),计划自己工作和生活(践行 GTD), 意识到自己情绪抖动并尝试控制自己的情绪。 针对能力上面不足,我也去阅读了彼得德鲁克的系列丛书,柯维的「高效能人士的七个习惯」。 这些措施的确帮助了我,我觉得自己比以前更强大。 但是始终没有彻底解决我的问题,无法治愈我内心的恐惧和压抑 ...

more ...

2014 惑

上周刚做完了自己的 2014 工作 Review,其中最大的挑战就是工作职能的变化: 由一个开发工程师变成一个团队的 Leader。

3 月份开始带领功能线小组,11 月份带性能线小组,将近一年的时间, 业绩结果只能用四个字来描述

不尽人意

more ...

《项目管理修炼之道》笔记

项目管理修炼之道

随着团队规模的变大,成员之间合作的模式逐渐由单打独斗变成协作开发。 这时候会遇到很多意想不到的问题,项目管理的重要性也就显现出来了。 项目管理修炼之道 是一本讲技术类项目管理方法和实践的书。 从业者可以从这本书获得了有益的指导。 我在 Kindle 上面翻了好几遍,感觉受益匪浅,就把读书笔记拿出来供大家参考。

1、内容

核心内容是项目管理的生命周期和每个阶段的交付物:

  • 项目章程
  • 日程规划
  • 开发(控制节奏)
  • 结束项目,项目回顾

其他内容:

  • 如何和投资者沟通
  • 管理会议
  • 控制项目节奏
more ...

加班那点事儿

前段时间,一个好基友告诉我,他换了份工作,去了一家用户数据表现堪称吓人的创业公司去了。其中有一个细节引起了我的注意:他们在实行 996 的上班制度。即 9 点钟上班,9 点钟下班,一周工作 6 天。

同样实行这种制度的还有阿里的来往团队。当年(其实就是去年)在抢占移动端 IM 入口时候,马云都使用了红包政策,来往的工程师在高压之下,也实行 996 了制度。 我问过阿里的朋友,他们表示,整体加班情况的确比较多。我追问了一下加班效率,证实了我的一个猜想,有些个人是晚上加班没事干,尤其有些测试工程师,白天没活干,晚上活多,还经常等到 9 点之后才有事情。这个现象也许不是普遍的,但的确存在。

我自己是反感加班的,曾经面到一个开发工程师,表示工作三年来,加班时常为 0h。当时有点被这种表述惊讶了一下,然后我认为他是在标榜自己工作效率高。 这种表述也反映出他作为工程师,认为加班是一个负面的表现 ...

more ...

痛、快、活

上个月回家,在亲戚家里和侄子聊天,他刚从大学毕业,在家人的帮助下面找了算是对口的工作,对工作之后的状态有一些茫然,看不到前途和未来,我问了一个问题:

你平时是怎么面对困难和挑战的?

犹豫了一会儿,他告诉我:「大部分时间都是逃避掉困难」。

这个问题反而让我自己开始思考:面对困难的时候,为什么更倾向于逃避,而不是挑战和面对?

困难和逃避

想要一点点对这个问题抽丝剥茧,要做的第一步就是,来定义「困难」和「挑战」。这两个词都意味着,面临的事情可能超出处理者当前的能力范畴。比如让一个游泳初学者去横渡长江,让一个厨师学徒工去做满汉全席,让一个幼儿去思索人生的意义,或者让一个工程师去管理一个技术团队。

逃避可以让当事人避免处理不擅长的事情,不会面临各种碰壁,不会带来灾难,不会给自己带来痛苦,不会在结果不优秀时候受到嘲笑和讥讽。 另外,从技术和实施的角度看,面临不了解或不擅长的领域和事情,也会有无从下手的困苦。

「好人不长寿,王八活千年」这句谚语也标榜着这种逃避态度。枪打出头鸟,所以只要保持自己低调和保守,不接受挑战,即可以安安稳稳了么?

野心和痛苦

我发现,在井陉任务管理时候,给予的任务往往会高于执行者的当前能力一点点。原因有二。

第一 ...

more ...

在 Raspberry Pi 上使用 AirPlay

早在去年时候,我就发现有个叫做 Raspberry Pi 的玩意, 已经忘了是从那里得知这个东西。这个卡片大小的电路板是可以运行 Debian 的主机,提供了一个发挥自己想象的平台。13 年 南京极客行动 时候,Michael 好像还拿了一个板子参加比赛。

RaspberryPi.jpg

我对这个东西充满了兴趣,仅售 $39 的主机,小巧的机身, 可以充分发挥自己的想象力:离线下载,动作片播放器,家庭分享中心, 给侄子学习编程~想到这些可以发挥自己的创造力, 就迫不及待的要去采购并去尝试。

不过我还是理智的压抑住自己的情感,手头老是有更重要的事情要去做,实在不能再给自己多找一个精力分散的方向。 于是,我这么一压抑,就压抑了一年。

后来在 InnoSpae 看到 SegmentFault 的姜尚用 Arduino 写了一个播放超级玛丽音乐的程序,又让我重新燃烧起使用硬件创造一些小玩意的热情。

4f42dcf03f067e12fe5c156e2af1373b.image.538x354.jpg

碰巧的是,现在有一个非常适合的场景需要这样的工具:前段时间,团队在优化发布流程,也就是将工程师写好的代码发布到正式环境的过程。其中有一个重要环节是需要需求方对提出的功能进行验证。而需求方往往验证的不及时,就需要一个方法来通知需求方 ...

more ...


hiredis 源码学习

前段时间学习 Redis 时候,听到 hiredis 的大名,正好也在做异步的学习,就找来代码学习一下。 我几乎不太会 C,仅限于最简单的语法,完全没有在生产环境中写过, 所以先看个 Client 简单代码,下次看 Memcached 代码应该会更顺畅一些。

Hiredis 是用 C 写的 Redis 客户端,对 Redis 协议进行了简单的封装, 同时提供了同步和异步的两种 API。Hiredis 的代码位于 https://github.com/redis/hiredis

more ...

Java 运行参数调整

JVM 在线上运行的时候,可以调整一些运行参数,查看参数帮助如下:

运行 java -h 可以看到 Java 运行可调整的参数。 运行 java -X 可以查看 Java 支持的额外参数。 注意一些参数的默认开启在 JDK6 和 JDK7 之间会有差异,甚至在 JDK7 的不同 update 也会有差异,运行 java -XX:+PrintFlagsFinal 查看默认的参数配置。

参考: Java HotSpot VM Options The most complete list of -XX options for Java JVM Tuning JVM Garbage Collection for Production Deployments JVM -XX: 参数介绍

more ...