23:04 The C10K problem: 并发处理1万个请求 » del.icio.us/chedong
It's time for web servers to handle ten thousand clients simultaneously, don't you think? After all, the web is a big place now.
22:58 长了一颗牙 » 王建硕

则两天觉得最里面很疼,牵连的右边的脸和眼睛也有些痛。才发现,自己居然又长了一颗牙,别人叫做智齿的那一颗。

这几个礼拜,总是趴在床上,让逸凡不情愿的张开小嘴巴,探头进去张望,看看他有没有长牙,结果,小家伙的牙一颗没有,自己反而长出了牙。

小玉说,“可以和儿子一起长牙,这样的机会可不多啊!”。

一脸严肃状:“小宝,我的牙长好了,你的呢?”

分布式的版本控制工具云风的 BLOG » Che, Dong's shared items in Google Reader

我最早接触的 SCM 工具是 vss ,但是没用几天(换工作到网易后)就迁移到了 cvs 。我自己大约用了一年后,公司集体从 cvs 迁移到了 svn 。领导这次大迁徙的大大说, svn 是一个更好的 cvs (确实是这样吗?据说有争议,但至少我感觉在多文件版本控制上 svn 比 cvs 方便)。

前几年,有人跟我争论过到底 vss 的加锁模式好,还是 cvs 的合并模式好。我觉得答案是不言而喻的,懒得争论。虽然在某些特殊环境上,我们偶尔需要加锁模式协同工作,但对于程序员的协作来说,无疑我们需要并行的工作。

我们在若干年前曾经淘汰过一次加锁的协作编码方式,而到了今天,是时候再做一些改变了。或许,分布式的版本控制工具才是未来的发展方向。我想,总有一天,cvs/svn 这类集中式版本控制工具会被淘汰掉的。

说说我的困扰吧,可能很多开发小组也遇到过。

  1. 我们禁止提交不能编译通过的代码,尽量不提交不能测试通过的代码。结果,对于很复杂的模块,有人几乎一个月都没提交过一次。他总是觉得程序还不太成熟,但几经修改的代码其实从来没有作版本控制。

  2. 有些模块由两个人合作编写,关系非常紧凑。有时候需要在两人之间交换一些代码,为了方便,大家通过代码仓库中转,结果在仓库中留下许多未完成的版本。

  3. 代码被用笔记本带回家,结果在家完成的部分无处可以提交。(为了安全,我们的代码仓库不能从外网访问)

  4. 某人写了一个模块,总是有 bug 没有修改完,而不敢提交。这个时候,另一个人希望协助他找问题,却没有合适的途径 share 那段完成了一半的模块。跑过去 XP 一下么?天哪,为什么我们这里每个人用的编辑器都不一样,还都爱用些特别个性的配色方案呢?

我们尝试过一些 work around 的解决方法,比如在本地自己创建仓库。托 TortoiseSVN 的福,这件事在 Windows 下做起来还是很简单的。可终归是多个仓库的管理,用的人始终感觉麻烦,而没有贯彻下去。

今天有同事问我,分布式版本控制工具到底跟我们现在在用的系统有什么区别。我想了一下回答说,它的本质就是在原有工具的基础上增加了一种仓库合并的功能。(哈,我接触这类东西时间不长,大家就当我胡说)

集中式版本控制工具,总要求你有一个中心服务器,提供一个项目仓库。每个人都必须严格保持跟仓库的内容一致。当项目大于等于 2 人时,往往都会指定一些规则,比如不要提交写了一半的代码到仓库去等等。结果,这些规则导致了上面我提到的问题。

即使是一个人自己用,有时候也会碰到问题。有一次我回到家,看到老爸(一个老程序员)在家做一个自己的小东西。因为我们家有两台电脑,我看见两台机器上有若干份不同的版本,我便推荐他用 svn 。因为两台机器都不是 24H 开机,我便选择了在 U 盘上创建仓库。可以设想的到,两台机器的 U 盘插入后盘符是不同的,这可真是一场灾难啊。

其实大多数情况下,我们要的仅仅是 版本管理 ,并不要求通过这类工具协同很多人修改同一份代码。在我们公司,修改别人的代码是要通知文件创建人的。大家都尽量在自己的工作目录下写东西。我并不要求分布式的版本控制工具帮我解决开发人员分布在不同地方的问题,我需要的仅仅是可以更方便的创建私人(或小团体)的分支,可以局部的提交的问题。这些,只需要一个仓库合并的特性就做到了。


我比较孤陋寡闻,知道有分布式版本控制工具是从 git 发布的消息开始的。有 Linus 的鼎鼎大名在那,应该是个好东西。我想还会有一些跟我一样,一进入项目开发就两耳不闻窗外事的朋友,不知道 git 是何物的话,不妨看看 Git 中文教程

可惜的是,git 对 Windows 支持的并不好。我们至少还有一半的项目跑在 Windows 下,开发人员则超过一半在用 windows 平台。听说其原因是 git 非常依赖文件系统的一些特性,这些在 Linux 下表现的很好,而 Windows 下特别糟糕。不管具体原因是这个还是别的,我对在公司推广 git 没有多少信心。

另一个选择是 Monotone ,但听说跟 git 有同样的问题(对 windows 的支持问题)。毕竟 git 本身就受了 monotone 的很大影响吧(我猜的)。有趣的是,和 Git 一样 Monotone 也是用 C 写的。当然这句话其实应该倒过来说,因为 Monotone 是从 2003 年开始的,比 Git 早多了。

关于 Git 和 monostone 对 windows 支持不太好的说法,可以参考这一篇: Mozilla: Version Control System Shootout Redux Redux ,Mozilla 的大大这样评价:Git is inappropriate for cross-platform projects due to its UNIX-centric nature; same goes for Monotone.

嗯,既然 Mercurial 是 (Mozilla 的) current favorite (but not the winner) ,我们也可以关注一下。说起来,Mercurial 的命令名很有趣,是 hg 。我花了几秒钟才反应过来,Hg 就是汞嘛 :D 。

下面再让我们看看几个候选人,Bazaar 的网站上有它和其它几种工具的比较。虽然有人说它性能不行,但我想那是针对 Mozllia 这种超级项目说的,我想对我们这样的小东西不会有什么影响。别的方面看起来很不错哟。尤其是它宣称的智能 rename ,真是太有爱了。

svn 下给目录 rename 绝对是场灾难。如果你不小心没有直接去仓库中 rename ,那么就意味着目录下所有文件的 del / add 。而即使你在仓库上直接操作,所有 client 都会大量的做 del / add 操作。每当这个时候,我都超心痛我的硬盘。

darcs 看起来也不错,我对 Haskell 本身就有莫名的好感,用 Haskell 写出来的软件对我就意味着稳定。虽然我自己不怎么玩 Haskell 也不太用 Python ,但是若让我花时间选一门语言玩的话,我会优先试试 Haskell 的。

作为 svn 的老用户,或许应该多关注一下 svk ,它在 svn 的基础上增加了一些分布式管理的东西。但是我不太喜欢这种补丁式的解决方案,因为设计总会随着需求而改变。若是背上太多历史包袱会让我有些不详的预感。

最后可以看看 GNU Arch 。我浏览了 arch 的 wiki 中 WhyArch 这一页,吸引我的是最后两条:

  1. Arch is lightweight

  2. Arch has a clean and transparent design

不过从 google 搜索结果来看,我没觉得 GNU Arch 是个有前途的项目(相比前面几个而言)。


最后,对于我这样依然有部分时间在 Windows 环境下苟延残喘的程序员来说,有个好消息。那就是托开源的福,可爱的小乌龟无处不在。

  1. Mercurial 的乌龟版:TortoiseHg

  2. Bazaar 的乌龟版: TortoiseBZR

  3. Darcs 的乌龟版: TortoiseDarcs

不过就我的历史经验,只有 TortoiseSVN 是正宗乌龟,最好用。不用对其它版本乌龟的操作手感抱太大希望。

16:52 eDraw Free Mind 简体中文版,免费软件 » del.icio.us/chedong
不兼容freemind和mind manager格式,思维导图的写作仍然是visio,灵感设计又名大脑风暴,捕捉、整理构思并以图表的形式表现出它们。
15:30 女性在Fab 68团队中的机会 » 博客@英特尔中国

在本期博客中,我请来了Fab 68的制造经理Maureen Duhig发表一篇客座博客。Maureen (Mo)是英特尔公司许多技术经理中的一位。作为Fab 68团队中的一员,她经验丰富,非常专业,与她一起工作我们感到非常幸运。

下面是她的博客全文:

对读理工科的女生来说,你们班上可能只有一、两位女生。从总体上看,中国大学里女生占了学生总数的一半,但在理工科毕业生中,女生却只有五分之一。

无论是作为理工科学生,还是今后担任工程技术类领导,女性都可称之为“一片待开发的处女地”,这不免令人遗憾。但是,青年女性有时也很难想象出自己在高科技领域担任领导的未来,因为在这个位置上她们的同性较少、可模仿的成功案例更少。

在Fab 68,我们承诺聘用、发展并且保留住最优秀的女性雇员,建立起我们的技术女性员工队伍。我们的核心领导团队中,已有很多在技术方面非常资深的女性担任领导职位。核心领导团队今后还会外请和招聘大学毕业生以及有经验的工程师加盟我们的大连团队。安排她们与在英特尔技术领域拥有较长职业生涯的成功模范们一起工作、深度接触,这将激励下一代女性工程师们快速成长。

高技术制造岗位,要求在技术及领导岗位上的女性具有很强的创造及创新意识。我们相信,那些有动力在激烈竞争的理工学科领域不懈追求的年轻女性们,毕业后也会勇于面对挑战,和我们一起在Fab 68去追求充满竞争力的职业生涯。

具体来说,我们希望招聘具有理工科学位女性的职位有:

· 制程技术工程师

· 高性能维护和设备工程师

· 工业和制造工程师

· 支持和分析工程师

· 预防和纠正维护技师

· 制造制程技师

· 操作和自动化技师

· 自动化开发与实施工程师

· 整合与良率-包括制程和产品-工程师

· 高性能维护主管-第一线和二级经理

· 高性能运营及制程主管-第一线和二级经理

· 其他各级技术主管和经理

我们的目标之一是要成为高科技产业的多元化先锋。我们知道,只有当我们具有多样化的思想和文化,我们才更具竞争力,因为我们可以利用许多不同的观点来创造创新的解决方案、产品和技术。在英特尔,女性在员工队伍中的机会,包括被提拔和晋升的机会都是无限的。我们强调要吸收女性的宝贵技能、天分和生活经验,这也体现了我们将英特尔Fab 68打造成理想工作场所的承诺。

英特尔有一些非常活跃的小组及项目,可以帮助并支持技术型女性员工不断进步。这包括:英特尔女性员工网络(Women at Intel Networks, WIN)、正式的导师制度、女性副总裁领导协会(Female VP Leadership Council)、资深女性领导出席的客座讲演论坛、继续教育以及后备技术领导计划(Technical Leadership Pipeline)等。

我们也与一些国际组织合作,例如女性工程师协会(Society of Women Engineers, SWE)、技术女性国际(Women in Technology International, WITI)。这些合作为我们的后备人才计划提供了支持,同时也宣传了我们的工程项目,为我们的女性员工创造了一个人际资源及社交的网络。这样的合作将带给女性员工激动人心的机会,使她们更多地参与到英特尔内部与外部的许多活动中,一起为女性所创造的历史贡献而欢欣鼓舞。

Comments (0)
09:21 关于推介计划更新的进一步说明 » Google AdSense China Blog


很多发布商可能已经阅读了我们之前发布的有关AdSense 推介计划更新的文章。在发布这一消息以后,我们收到了很多发布商的反馈意见,在慎重考虑了广大发布商的意见后,我们决定对新的推介计划进行一些修改。

在新的AdSense 推介计划中,推介收入将取决于用户所在的地理位置,而与发布商的地理位置无关。如果您推介的用户在北美洲、拉丁美洲或日本,他们在 180 天内的收入达到 180 美元并且解除了所有付款保留,您就可以获得 100 美元的推介收入。不过您推介的其他地区的用户将不能给您带来推介收入。这些更新会在 1 月的最后两个星期开始生效。

在新的推介计划中,当您将推介广告定位到日本、北美洲或拉丁美洲时,在Google 推介产品中就会有 AdSense 推介选项。为了确保您的推介收入有效,建议您检查一下您目前的 AdSense 推介的定位地区。



我们还收到一些发布商来信说最近账户中的 AdSense 推介收入不见了,询问这些推介收入是否被扣除了。请大家放心,这只是我们系统的一个暂时的显示错误,您的推介收入没有被扣除,仍然有效。目前我们的工程师正在努力解决这个问题,感谢大家的耐心和理解。

另外,我们还想通知大家关于 Firefox 推介计划的更新:中国地区的 Firefox 推介收入在2 月的第三个星期将会调低。这个变化将只针对来自中国地区的用户的转换,同样与发布商的位置无关。

再次感谢大家对推介计划的支持和反馈。
Presentation like Steve Jobs(Macbook AiR)Anyone can speak! » Che, Dong's shared items in Google Reader

文/Raymond

Wondering How to do a Great presentation in front of big group of people?

Here, let me share with you how Steve Jobs,the legendary CEO of Apple, introducing his new product the MacBook Air ultra-portable laptop.

 

 

 

What do you feel After watching it? Isn't a WOW and inspiring presentation? or may be you have the same idea as me, to take one Macbook Air laptop home :)

So let's discuss little bit how he made this presentation as Pros? Here is some tips I observed from this video:

What do your audience want and expect from you?Steve Jobs apparentlly knows what his audience what.

No "Good evening", "Ladies and gentlemen"," thank you for inviting me her to speak",blah, blah, blah. Start with something unexpected,different, original and get the audience's attention immediately.

Let the powerpoint assist you but not replace you.

Move,walk,stroll,pace,stand!it makes your presentation much more interesting for the audience if you do.Movement generates a secret weapon which you'll need as a speaker-it gives you energy.

 

Hope these tips can help you.

 

Cheers!

Raymond Gao

Your Public Speaking Buddy


^==Back Home: www.chedong.com

^==Back Digest Home: www.chedong.com/digest/

<== 2008-01-21
  一月 2008  
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
==> 2008-01-23