BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Facebook大牛、HipHop作者赵海平加入阿里巴巴

| 作者 郭蕾 关注 9 他的粉丝 发布于 2015年3月16日. 估计阅读时间: 3 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

3月14日,阿里技术保障在其官方微博宣布Facebook的第一位中国工程师、HipHop作者赵海平即将加入阿里技术保障部。赵海平是北京大学1987级的学生,并于2007年3月加入正式加入Facebook,在工作期间,他曾创建了著名的HipHop项目,也参与了后来的HHVM项目。赵海平加入阿里巴巴后将重点攻克他们在软件性能以及Java使用过程中遇到的疑难杂症。

HipHop是赵海平创建的一个程序解释器项目(实现细节可以参考这个视频),它可以将PHP脚本代码先转换成抽象语法树(AST),之后再转换成优化的C++代码。Hiphop不仅可以大幅提升代码的运行速度,而且还可以提高CPU的利用率,从而降低硬件成本。但是使用HipHop后,Facebook又遇到了新的问题,因为HipHop还没有完全实现PHP的所有特性,所以工程师在调试代码时已经不能再使用标准的PHP解释器。接下来,他们又开发了自己的解释器HPHPi来解决这个问题,而HPHPi的运行速度比较慢,并且功能也不完善,于是就有了后来的HHVM。HHVM是一个PHP虚拟机,它支持所有的PHP语法,可以无缝切换到官方的PHP版本,宣称比官方版本快9倍之多。目前最新的版本是3.6.0,在GitHub上的关注量已超过1万,从贡献列表中可以看到赵海平对HHVM也有代码贡献,但主要集中在2011年。关于HHVM,InfoQ之前就有报道过,读者可以参考阅读。

关于赵海平为什么要加入阿里巴巴以及加入之后的具体工作,他在告别信中这样写到:

作为一个华裔工程师,我想让中国也成为软件技术最好的地方,我想让阿里也成为最值得工作的地方,他们的架构非常庞大,是我用武之地,他们面临的软件性能问题对他们至关重要,他们在使用 Java 的过程中有很多的有趣的问题需要解决,我想在那里继续我期盼成为最伟大的计算机科学家的梦想之路,我至少可以成为一个专业的程序员,祝福我吧!

赵海平非常喜欢编写代码,在Facebook 2011年的一个采访中,他表示,代码就是他生活中最大的乐趣,他特别喜欢在早晨工作。同时,在采访中,赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读。另外,InfoQ近期会对赵海平进行一次独家专访,敬请期待。目前我们已经正式邀请赵海平回国参加QCon北京大会担任主题演讲嘉宾,最新消息会及时和大家同步,对QCon大会感兴趣的读者可以查看官网页面了解详情。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by 严 董

在哪里自行阅读?

Re: 赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by 霍 泰稳

那个采访中有关于这个建议的报道,不过是英文的……

感觉确实很牛,至少改变了些许! by 杨 生

写代码写到这个级别,已经算是会当凌绝顶了!

圈子真是小 by Zeng Abrams

这个难道就是传说中那个被垠神评为研一学生课后作业的项目,圈子真是小啊

Re: 赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by huang xianguang

有链接吗?

确定减少CPU的利用率描述没有错?? by zehe chen

---- Hiphop不仅可以大幅提升代码的运行速度,而且还可以减少CPU的利用率,从而降低硬件成本。

确定减少CPU的利用率描述没有错??

Re: 赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by Guo Gary

Re: 确定减少CPU的利用率描述没有错?? by Guo Gary

你是说需要数据支撑吗?可以看看这里www.facebook.com/notes/facebook-engineering/hip...

Re: 赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by 尹 明

能把内容直接贴出来吗?我上不去那个网址啊!

Re: 赵海平也对不同阶段的工程师提出了自己的建议,读者可以自行阅读 by Guo Gary

For junior programmers, I highly recommend spending time with a wide variety of technologies, including HTML, CSS, JavaScript, PHP, C, C++, Java, and SQL. This can help you identify your interests and potential directions for career development. Knowledge-wise, it is also extremely beneficial to have broad understanding of different problem solving methods.

For intermediate-level people, I think Facebook is one of the greatest places for having impact. By taking on challenging tasks, you can make changes that affect millions of users. Nothing is more exciting than seeing your code change the world. Facebook counts on our talents to come up with genuine ideas, respectful communications, and great implementations.

For senior people like me, it's really our job to coach young engineers on how to approach technical problems systematically and how to resolve disagreements gracefully. The job comes with the great responsibility of supervising the entire engineering force to move in a direction that we as a company are happy with. I hope senior engineers are willing to spend their time helping other people grow instead of just focusing on their own work. By putting ourselves into "sharing mode," we can help build a great software community within our respective companies that will proliferate for long, long time.

Re: 确定减少CPU的利用率描述没有错?? by 钱 建华

应该是提升CPU利用率才对吧?

Re: 确定减少CPU的利用率描述没有错?? by Guo Gary

秒懂:)

大牛 by Jackie Allen

How much $/day?

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

13 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT