BeijingOpenParty2010年8月"清雨榕香"活动总结
CNBorn:OpenParty"清雨榕香"活动
2010年8月的OpenParty "清雨榕香"活动创下了各个话题参与人数的新高,很多话题的会议室都密密地站满了人,在各个热门话题的驱使下,大家的热情依然不减,在一个下午的时间里体验了一个又一个知识分享的小高潮。关于活动话题的详情,请参见OpenParty网站上关于本次活动的链接,下面简要记叙下我参与的几个话题的相关信息。淘宝广告技术部开发流程和Scrum实践
首先是来自淘宝网的苏宁带来的"淘宝广告技术部开发流程和Scrum实践",淘宝的Scrum实践一直应用于广告竞价系统的开发,取得了一些成果。想必大家都想要细细了解一下Scrum在大公司内部的实际应用案例,这个话题提供了很多相关的信息,帮助大家更好地了解Scrum以及实践Scrum时会遇到的一些问题。我的记录基本上遵循了讲解时的Slide结构,有一些内容是从现场的讲解中了解到的,也补充了进去。
Sprint刚开始时
- 使用excel来管理,自动生成燃尽图
- 流程:产品经理提出需求->Sprint->产生Backlog->进行开发及测试,最终到产品上线->Review
- 只有产品、开发、测试几个角色,角色比较少
- 受干扰因素少,Scrum流程比较精简
- 功能需求数目增加
- 很多时候都是项目进行一半的时候才引入Scrum
- 团队中角色数目的增长
- 经常有工作中遇到的种种问题而引发的中断,此时Scrum要如何进行配合(明确分工,通过流程进行配合)
- 产品
- 架构师
- TL/PM/Scrum Master
- 开发
- 测试
- PE
- 运维工程师
- 产品经理
- 提出需求、提出产品文档,对项目进行验收
- 需要注意的是,在淘宝,相对于一般的Scrum流程,对于文档的要求要更高一些。只有更高的文档要求,才能保证公司业务可以更从容地面对人员变动等情况。
- 架构师
- 分析需求对系统架构、功能上的变动
- 出台系统调整方案
- 系统总体设计
- 掌握系统改造成本
- TL/PM/Scrum Master
- 组织Sprint
- 追踪项目开发进度
- 沟通协调
- 测试
- 需求提出之后,测试就会进来
- 了解需求动机
- 测试用例
- 各种测试
- TDD
- 开发
- 模块
- 代码开发
- 单元/内部集成测试
- Bug修复
- 上线手册(这部分是必须的)要交给运维来Review
- 运维(产品运维)
- 了解业务需求、系统瓶颈
- 熟悉模块接口和数据接口
- 故障应对措施
- 流量增长模型
- 实际上线操作
- 由产品经理和架构师来共同确定功能需求,完善比功能基本明确需求对于系统功能的变更和影响,产生未细化的Backlog
- 然后将未细化的Backlog通过Sprint来产生细分的backlog,交由开发者进行开发
- 开发人员在开发的过程中,需要和测试和运维一起进行协作来完成。在交由运维人员进行上线以前,运维人员必须从测试人员那里拿到上线许可。不经过测试人员认可的项目不能上线。
- 一切不以上线为目的的开发都是耍流氓
- 开发测试比例 2:1
- 尝试结队编程,在一段时间内实行,后来发现成本比较高,就放弃了。
- 需求点罗列
- 需求的实现思路
- 任务分解
- 每日晨会的三个经典问题
- 头脑风暴,集思广益
- 成功
- 不足
- 改进方案
- 规定了上线时间,能否完成?
- 需要落实到每个人,每个人的各个工时,算出总工时,然后再确定上线时间。
- 而需求要做到能分解的就分解掉
- 如果需求提出方不能满足所计算出的上线时间,那么就要进行研究讨论看看砍掉哪方面的需求以达到更短的上线时间。
- 人日的计算方法;通常一个人的工作还要有分工,60%开发,40%运维;按照一个人每天6小时的工作来计算
- 调整工位:一个项目的人员坐在一起,减少沟通的成本
- Excel
- Sharepoint + Project
- XPlanner - (记录工程师实际的工作用时,最后自动生成burndown chart,但是最后由于工程师反映此项工作太耗时间,被搁置了)
- Mindmap,现在主要使用mindmap来在一个巨大的脑图上记录各种信息。这个脑图非常细致,规定了各个人要进行的任务,任务的划分也非常细致,时间精确到小时
- 开发人员自己领取任务。这部分淘宝的做法和Scrum的标准做法有些许不同。
- Scrum模式本身的推崇由开发人员自己来规定并设计项目开发点,但是淘宝在实施上发现过于浪费时间了,于是就变成了由产品经理等需求提出人和架构师定出粗略项目,最后在开会前就定好要开发的功能点,只做任务分解
- 其中包括文档信息,RPM包的版本信息,为测试部署的相关文档,包括上线操作、回滚操作的具体步骤
- 上线手册应该手把手传达给运维人员如何进行操作,目标是做到无须询问开发人员就可以实现项目上线。所以淘宝对项目开发人员的文档水平要求都非常高
- 这些上线的文档都要进行Review!
- 最好有最终的文字描述,用文字解释详细,并且有实例。
从豆瓣Pulse谈起 - HTML5 相关技术在实际项目或产品中的应用
接下来是由豆瓣的工程师石头带来的"从豆瓣Pulse谈起 - HTML5 相关技术在实际项目或产品中的应用"话题。
HTML5在视觉,交互等诸多领域,为Web带来了全新的体验
最大的问题:浏览器兼容性 - 应该有意识地去引导用户使用性能更高,功能更多的现代浏览器,
CSS3技术非常的绚丽,很多效果的实现已经完全不需要Flash了。石头在现场针对前端的一些实际应用都分别进行了详尽的举例,详情请见Slide和视频。
Douban Pulse 这个产品中已经使用了一些CSS3的新特性,带来了很好的用户体验。
关于具体的信息,大家可以参考现场石头的Slide以及视频,更形象直观 http://app.beijing-open-party.org/topic/20
南极、禅院与现代社会
这是由有着丰富经历的廖大侠带来的精彩话题。我想很多朋友起先和我一样,可能是向往着精彩的景色和见闻来关注这个话题的。事实上最终这个话题带给大家的更多的是对于精神领域更深入的了解。在这个繁忙的社会,我们事实上很难抛开一切,安静地思考自己。而这个话题中带来的一些观点,恰恰从这个方面填补了我们的欠缺。 廖大侠简单谈到他个人的一些经历就已经足够让大家感到钦佩:本科在天文台做论文,研究生时跟随导师做火星研究,是国内专业研究火星的团队成员之一;寺庙进行禅修;曾也想成为一名吉他手;现在在从事数据挖掘相关的工作...... 这履历本身就已经是足够精彩的故事。随后故事进入正题,开始讲述随南极科考队进入南极的故事。 一些关于南极的有趣故事:- 夏天是天堂,冬天是地狱
- 企鹅坐浮冰旅行
- 南极很干燥,号称比沙漠还要干燥
- 南极的环境,是和火星最相似的环境
- 极夜也不是一片黑暗:中午的时候虽然没有太阳,但天还是亮的,就像早晨还未出太阳时一样,而且夜晚的月亮也经常很亮
在南极的严酷环境中,身边的社会结构有着全然不同的转换。一个小小的团队,就是在那里全部的社会构成。因为资源才是真正的稀缺品,钱变得没有任何意义。而小群体中的每个人都有着明确的分工和责任,是团体共同生活发展所不可或缺的一部分。我们从来不是一个社会的旁观者,在一个庞大的社会中可能并不容易清晰地意识到这一点,但是在那样一个小环境中,这种观点和意识变得无比重要。
在这样的社会生活中所感受到的
- 永远不要抱怨
- 服务意识、合作精神与专业技能一样重要,有时甚至更重要,一个人足以影响整个团队
- 谁是最重要的人?生活中身边的人
- 不要试图去改变不可改变的东西
- 学会静心很重要
- 切勿贪多务杂
- 努力使自己的心达到空虚、明净污染、不扭曲变态的理想状态
糖醋鼻子:清雨榕香后记
“一个系统就是对世界的一种看法” “系统是一个集合” “如果在同一时刻两个系统处于状态空间的同一位置,那么空间是因为维度过低,即视图是不完全的” “如果要恢复由于投影而丢失的信息,我们就必须从其他渠道获得系统的信息,也就是关于消失的其他维度的信息。” ――《系统化思维导论》 . 温伯格 正所谓“饮如长鲸吸百川,衔杯乐圣称世贤”,我们的 Openparty 参加人数在大家的努力下又创出了新高,也吸引了各方面的社区和团队,给大家带来了更多的新鲜事,这点我们都快赶上传说中的青旅了,呵呵。 伴随逐渐扩大的影响力,我们的组织者一起合作开发的新网站也开始正式运行,报名、投票、签到,在此也代表大家对他们的辛勤汗水表示敬意。从这次活动开始, Google 中国正式成为 Openparty 的特约赞助商,这也为我们的活动带来了更强的后盾和机会,所以这次的活动纪念品少不了 Google 元素,当然也有精彩的技术话题。 这次参加活动的美女也是有史以来井喷的一次,害得我举着镜头都不知道先拍哪个好,所以一会看活动的照片,一定要选择一个 GF 或者 LP 不在你身后的时间,否则 … 有美女,当然也会有我们的乐队,小胖童鞋如约为大家带来了一支优美的撒斯克 … 错了是萨克斯名曲, yeah ,貌似就差红酒了 … 由于新网站的逐渐稳定,我能很方便的预习每次的 topic ,并为自己感兴趣的投上一票并做准备,所以,我早早的就盯紧了“多核时代的高性能 Java 开发”和“南极禅院”,所以拍完照片,我就一头扎进了他们的话题中。多核时代的高性能 Java 开发
第一个是 James 带来的“多核时代的高性能 Java 开发”,其实这对于很多人来说可能是一个“敏感”话题,因为性能一直是很多人诟病 Java 的利器, Java 就一定是低效的代名词?那听了这个话题我们就有答案了,而且答案很简单。 Java 是从更上层(相对于底层的语言)的维度去解决问题,所以为了保证下层的稳定和适应性,性能的考虑变得相对次要;另外,由此带来的便捷也很容易就让人们忽略对性能的优化和深究意识,所以说,到目前为之,在纯粹的执行效率方面, Java 确实慢,但不是人们想到和看到的这么慢,其中一个重要的原因就是,我们的 Java 程序还停留在单核时代,多核带来的好处并没有帮助(甚至负面影响)到程序的性能,所以, James 此次来是告诉我们,事情远没有人们想象的那么糟...庄老师:了解新环境——OpenParty(OP)的例子
参加北京OpenParty(OP)的见闻——人们是如何进行终身学习的
通过北京OP活动,我们可以了解到除了传统课堂和有组织系统强化培训之外,人们还可以进行一种更加灵活开放、自由选择、不断延伸的交流学习。
2010年8月28日下午,我和余波同学代表教育大发现社区,第一次参加北京OP的8月份活动。OP是由北京的多个技术社区,为北京IT从业人员营造一个交流、表现、学习、生活、发展、进步的空间。OP活动按月举行,活动的组织,会首先通过网络征集话题,即活动中大家面对面时,有组织地分享哪些具体话题,这需要提前通过网络征集并确定下来。这一次我和余波提交分享的话题是“在网络社区中如何更好地学习”。
创造学习环境
我们所处的这个时代是个充满变化的时代。如何适应变化,本身就是一种需要习得的能力。其中一种比较有效的学习方式,就是组织像OP这样的活动。从一篇对北京OP发起人之一Tin的采访,可以看到OP活动发起者,他们是IT行业中的Geek,他们需要不断地更新视野,他们就自己组织起来,创建OP活动,来满足自身不断学习的需要。 由此,可以看到,我们是可以自己去创造自己想要的学习环境和学习方式,可以通过有效的组织管理,来获得更好的学习效果,来与时俱进,甚至由此来推动社会的发展。 对于在职教师而言,我们也是可以这样做,来共同创造自己想要的学习环境和学习方式,通过有效的组织管理,来获得更好的学习体验,来与时俱进,并进而把这种与时代发展相应的学习活动组织方式,带入校园。社区的组织作用
通过OP的例子,我们也可以发现,OP活动把关注OP活动的人群,不断地连接起来,这样人群连接的过程,是滚雪球效应式的不断地延伸和拓展,每一次活动,都有与此次活动相关的碎片信息,这些碎片信息可能是活动的公告,也可以是哪位与会者的一篇日记或者一张活动照片,藉着这些碎片信息,就会不断连接可能的人群。特别感谢:
个人致谢:
糖醋鼻子、罗婧、 轻眉、璎珞、隋冉、 CNBorn、Wendy、 李英豪、钱安川、 Tin、李剑、江华 、Chloe、 雨嘉、文桦、 程勇、詹老师、李笑来、 蚂蚁、李兆海、丛林、 西乔、端木、Donkey、BillyJohn、Wentrue、陶黎、杜正斌、Jason Ma、佘广、刘江、杜正彬、刘静、ChrisLo、Limo、Makestory、东国,以及众多参与者+分享者...
社区致谢:
华章出版社
图灵教育出版社
OReilly出版社
Google中国
Matrix.org.cn
OpensourceCamp
JetBrains
是他们的努力和奉献, 让我们享受这一切!
活动照片:
糖醋鼻子:活动实录活动视频:
http://v.ku6.com/playlist/index_3844716.html活动讲稿:
http://app.beijing-open-party.org/event/3更多活动动态
请随时访问OpenParty活动网站,或者在Twitter.com、新浪微博上搜索关键字#openparty!

BeijingOpenParty2010年8月"清雨榕香"活动总结的评论
如要发表评论,请先 登录