活动
上周的周末(5/5-5/6), 我们参加了 黑客马拉松 活动, 简单点的介绍, 就是一群程序员/美工/产品经理, 花费1整天的时间, 鼓捣出一个酷的东西。 黑客的文化在于创造, 分享, 进步, hackathon的活动是黑客文化的一个体现。
过程
参与活动可以考虑预先组队和现场组队, 我们是预先组好的, 4个人: 我(GuruDigger), 蔡金(GuruDiggger), 吴杰蔚(住隔壁, 交大硕士), 周航(EMC云存储), 准备做的产品, 是我的一个Idea: 豆瓣match , 通过豆瓣上面的喜好资料, 来寻找志同道合的对象。
一天时间非常的紧张, 我们提前一天的晚上, 小聚了一下, 讨论了一下产品, 以及具体的分工。 我负责web前端和数据挖掘算法, 吴杰蔚考虑推荐算法, 周航负责爬豆瓣数据, 蔡金负责页面设计。
黑客马拉松举办的场地是在江湾体育场的创智天地, 我们早上9点开始, 到了现场, 我们抢了一个靠近门的位置, 没有理会现场的举办方, 直接开工了。
我把网站的架子弄起来(rails), 我们在如何让ubuntu默认安装的mysql可以让其他机器访问到这点上花费了比较多的时间, 然后上午的时间就结束了。
中午在现场吃饭, 也是社交的时间, 到处找人聊天, 以及认识新朋友。 平时很少有机会聊的一些话题。
下午的时候, 我遇到了技术问题: 基本上的时间都花费在了如何让豆瓣用户登录这一块上面。 我本来采用的是 omniauth-douban , 花费了大量时间, 流程还是没有走通顺, 后来换了道哥的 douban-ruby , 看懂了豆瓣oauth的逻辑, 总算实现了登录和替用户发豆邮的功能。 周航这边导数据也遇到了一些问题, 不过总算都搞定了。
开发期间, 抽空去看了一下其他团队。 团队采用的技术区别还是比较大, ruby, python, java, node.js, objective-C, 还有一组是用.net的, 现场学习新的技术。。 采用的开发工具也百花齐放, eclipse, Xcode, emacs, vim, sublime, textmate… 如果是非技术的人过来, 看大家的电脑屏幕, 是搞不清楚大家在做什么的。
就做的东西而言, 大多数还是以做产品为导向, 有做团购搜索的, 有做青年旅社查找应用的, 有做平台的, 都是大东西啊。 让我眼前一亮的只有一个: 基于js+webgl的3D小游戏。 引擎是组里面一个做游戏的牛人现场写的。 我觉得这个产品算是最符合黑客精神的了。
晚上我的精力不足, 效率低下, 不过把网站的整体流程跑出来了。 10点钟我们离开场地回去, 我和蔡金整理好UI, 然后我把整体流程跑顺, 处理bug, 我弄到了4点才去睡觉。 不过, 产品的完成度总算是能够应付第二天的展示了。
第二天7点半我起床, 和蔡金一起去场地。 这一天都是展示日, 没有我什么事情, 就在下面休息。 最后的结果是, 我们的产品得到了三等奖, 应该算是理所应当的吧。 第一名是Chop, 一个聊天的产品。
小结
就开发而言。 我觉得有些可以总结的:
- Hackathon活动一天都应该处于一个集中精神做事情的状态, 我前一天没有休息好, 造成这一天精力不充沛, 时间效率不高。
- 为了更好的产能, 可以做的是提前把技术细节都准备好, 现场做的只是拼装, 但是我觉得这样就太作弊了, 不算是好的行为。 毕竟现场搞定问题才是意义所在。
- 开发的时候, 因为分工做好了, 沟通链减少很多, 基本上都在全力开发中。
- 一天的时间非常紧张, 项目计划需要弄好。 我们还是错误预估了工作量, 预期要做的根据喜好推荐用户的功能没有做出来, 只能通过部分的随机来模拟一个效果。如果还有下次的活动, 一定要考虑清楚工作量。
- 成功的很大因素靠产品设计, 在这点上面蔡金考虑产品考虑得很好。 直截了当地解决问题。
然后就是本次活动:
- 黑客精神应该是用技术的方式巧妙解决问题。 参与者做的大都是产品导向, 解决问题的方式也不是很开创性质的。 只能算是做出来一个东西吧。
- 奇怪的评委, VC或者公司大员, 有人还提问“你们的盈利模式是什么”(我把这个当成一个笑话来看), 如果这个活动是以产品开发为主题还差不多。 但是不符合“黑客马拉松”的气氛。
- 和硅谷双线举办的效果不好, 基本上是双方分开做自己的事情。 这样就没有太多的意义了。
- 我觉得应该得到第一名的那个3D游戏连第二轮都没有进入, 在这样的评委组成下, 意料以外情理之中。
我觉得让开发者们时不时地聚在一起, 花费一天两天的时间做一个小原型的活动很有意义, 但是不应该像本次活动一样办成一个大会形式了。 如果下次还有类似的活动, 我还是会去的。 然后我会考虑做一个更有黑客精神的东西。