编辑丨小智
本周要闻:
12月8日召开的
Google开发者大会给中国开发者带来了什么?微软并无退出手机市场意愿,且欲将手机变成真正的PC;Yelp的数据管道已开源。
12月8日,InfoQ记者应邀参加Google开发者大会2016北京站,这次大会有超过2000开发者参加,Google大中华区总裁Scott Beaumont、Google全球开发者产品总监Ben Galbraith做了主题演讲,之后InfoQ记者参加了对他们的采访。
详解Google开发者大会2016
从内容上来说,这次Google Developer Day相当于今年5月份的Google IO的浓缩版,另外有一些专门针对国内开发者的福利和讲座。主题演讲的回放在这里:
http://v.youku.com/v_show/id_XMTg1NDQ3ODM4OA==.html
主题演讲主要介绍了Google目前力推的几项技术和创新:
-
Web开发,包括Progressive Web Apps(PWA)和Accelerated Mobile Pages(AMP),两者可结合使用,效果更佳。
-
Angular,目前已经推出了2.0版本。Angular项目负责人Naomi Black专门上台做了介绍,使用Angular可以开发PWA.
-
Android开发,Android 7.x和Android Studio,特别是Android Studio推出的设计工具以及Vulkan 3D绘图API。
-
Firebase,这是Google收购整合的BaaS服务,给移动App提供后端支持以及强大的分析和报告。
-
TensorFlow,Google开源的人工智能项目,另外Google还计划开源它的另一个AI项目,即AlphaGo背后的DeepMind,不过大会上没有多提。
-
DayDream,接力Google最早推出的CardBoard,将VR推向下一个台阶的Google VR平台,明年会有很多DayDream Ready的设备出来。另外Google也没有拒绝其它平台,比如开场时请人演示了基于HTC Vive进行3D作画,里面使用的Tilt Brush工具就是Google开发的。除此之外,在AR方面还有Tango项目也在大会上现身。
这次开发者大会的特别之处在于它的声势浩大。从2007年到2011年,Google在中国举办了多届开发者大会,特别是早期的Android开发者,可能会对2011年的大会记忆犹新。
其后Google在国内的开发者线下活动转向了社区,由Google的开发者关系部门支持,各地的Google技术爱好者们组织了GDG,定期举办线下活动,分享最新的开发技术,Google官方的工程师也会参加。据Scott说,其实GDD也一直在办,不过规模小点。
这次规模盛大的开发者大会从总体上来说,是Google在中国举办的面向开发者的线下活动的一环。这次大会表示Google对中国开发者更加重视,在大会上Google也针对中国开发者推出了一些便利服务和计划。
给中国开发者的礼物
首先,Google面向中国开发者推出了3个本地化官网,包括不用翻墙访问的官方文档,官网采用了.cn域名,具体如下:
-
developers.google.cn 整合的Google技术学习资源,包括分门别类的技术产品和开发指南。
-
developer.android.google.cn 特别为Android开发者推出的官网,有中文界面,不过目前官方文档还是英文的。
-
firebase.google.cn Firebase中文官网,包括英文的官方文档,不过想要使用的话还是需要链接到主站。
除了这三个本地官网之外,Google还将Google Developers Agency Program向中国软件开发代理商开放,帮助这些代理商掌握最新的Google开发技能,开发更好的应用。对于国内做外包开发的公司是一大福利。
需要注意的是,这些Google开发者中文官网并不代表着其对应的服务,如Firebase,能很快的迁移到中国,因此只能称它们为便利服务,为国内开发者获取Google最新技术扫清障碍。
Google在中国
Scott在采访中表示,Google在国内向开发者和企业等提供服务。如Adwords和Admob,同时,在涉及到海外市场时,Google的各种服务都能派上用场。
这次大会上,Google也将出海作为一个重点,希望开发者将目光投向全球。
对于大家关心的问题,InfoQ记者问了Google搜索是否能返华,Scott表示目前没有更多信息透露,同样的,对Google Play和GMS在国内受到限制有何看法,Ben没有正面回答这个问题,只是表示尚无计划将GMS core带到中国。
另外还有人关心最近传言Google内部研发的Andromeda操作系统,InfoQ记者向Google相关人员咨询了这个问题,他们表示像这种传言Google一般不会官方回应。
对于大家关心的很多问题,目前Google官方并不能提供进一步消息。即便如此,这次开发者大会令人兴奋,Ben表示,他们将加强和国内开发者的交流,将更多类似活动带到国内,帮助中国开发者社区。
本文作者:徐川
近日,微软为ARM平台带来了完整版的Windows 10,包括对所有桌面应用的支持。微软在骁龙820芯片上演示了高清视频播放,并运行了Adobe Photoshop和Office软件。微软计划先让ARM平台的笔记本运行最新版的Windows 10,并使用模拟器运行传统的x86平台桌面应用,为用户带来无缝的体验。虽然微软选择了先让笔记本运行Windows 10,不过根据以往的经验,微软有可能也会把手机变成真正的PC。
去年发布的Continuum着实惊艳了一把,它把手机的屏幕投放到显示器上,并让我们感觉它就像一台成熟的PC一样。不过它只是看起来像而已,我们仍然无法在上面运行真正的PC应用。我们可以在上面进行网页浏览或做一些文字编辑工作,但要干重活就需要切回到真正的PC。
一直有传言说微软可能会发布基于Intel架构的Surface Phone,不过Intel取消Atom处理器让这个传言不攻自破。不过基于ARM架构的手机或平板倒是有可能,而且微软会用模拟器运行桌面应用,从而让它们变成正在的PC。
这个行业的巨头们从未放弃要把手机变成PC的想法。之前摩托罗拉尝试过Atrix,Asus发布了PadFone,Canonical尝试了把Ubuntu手机变成PC。而微软在PC界的绝对地位更有可能让这种转变大规模普及。
2016年是微软移动业务倒退的一年,Windows Phone的市场份额萎靡不振。不过微软并没有因此决定退出移动市场,相反,它在ARM平台所做的努力说明它正在酝酿新的动作。微软所面临的挑战,是如何为它的手机构建庞大的生态系统。模拟器有性能上的短板,把手机变成PC需要技术上的重大突破,而这需要整个行业的努力。
iPad Pro虽然也支持一些常用的应用,但对大多数专业人士来说,这些应用跟桌面版比起来仍然存在不足。比如Adobe系列软件,仍然需要依靠Adobe公司专门为iPad开发专用版本。Google的Android应用也无法跟桌面相比,不过有传言说Chrome OS将会和Android合并到一起来解决这个问题。人们对微软抱有重望,因为微软在PC界的霸主地位。
从近期发布的Surface系列(包括Surface Studio)来看,微软似乎想要巩固它在PC界的位置。同时,它在混合现实和虚拟现实领域也有所动作。除此以外,就是考虑如何把手机变成PC了。这对Windows粉丝和一些商业客户来说是一个很激动人心的消息。
本文作者:薛命灯
在过去的几个月里,Yelp一直在不断地向大家分享着他们的数据管道的情况(文章列表见页尾)。这是一套基于Python的工具,可以实时地将数据流向需要它们的服务,并随之加以必要的数据处理。
这一系列的文章讲述了如何从MySQL中将消息复制出来、如何跟踪模式的变化及演进、并最终分享了如何把数据接入到Redshift和Salesforce等不同类型的目标存储。
幸好Yelp非常慷慨,他们不只是分享了自己的设计思路和经验,更是赶在圣诞节之前向大家献上了一份大礼,把主要模块开源出来了!
https://engineeringblog.yelp.com/2016/11/open-sourcing-yelps-data-pipeline.html
在读过了所有这些关于我们的数据管道的文章之后,可能你会觉得我们这些Yelp的人不过是像一个孩子在向大家炫耀他的新玩具一样,肯定会自己捂得严严的,不会和大家分享。
但是和大多数有了新玩具又不会分享的孩子一样,我们愿意分享——所以我们最终决定要把我们的数据管道的主体部分开源出来,然后大家就可以开心地迎来新年假期了。
闲话少说,下面这些就是Yelp为大家的假期准备的圣诞礼物:
-
MySQL Streamer会不断地查看MySQL的binlog,得到最新的表变更操作。Streamer负责捕获MySQL数据库上的单条数据更改操作,并把它封装成Kafka消息,发布到Kafka的某个Topic中。如果有必要,也会做模式转换。
-
Schematizer服务会跟踪每一条消息所使用的模式信息。在有新模式出现时,Schematizer会处理注册消息,并为下游的表生成更改计划。
-
Data Pipeline clientlib为生产和消费Kafka消息提供了非常易用的接口。有了clientlib,就再也不必关心Kafka的Topic名字、加密或消费者程序的分区情况了。你可以站在表和数据库的角度去考虑问题,不必关心其它细节。
-
Data Pipeline Avro utility包提供了读写Avro模式的Python接口。它也可以为表的主键等模式信息提供枚举类,这一点Yelp在实践中发现非常有用。
-
Yelp Kafka库扩展了Kafka-python包,并提供了多重处理消费者组等新功能。这个库可以帮助大家非常高效地与Kafka进行交互。这个库也让用户可以判断出Yelp内部的Kafka跨区域部署情况。
数据管道中不同组成部分的概览图。单个服务用方形表示,而共享包用圆角表示。
这些项目每个都有Docker化的服务,你可以很容易地把它们用到你的架构中。我们希望对于每个用Python构建实时流处理程序的开发者来说,它们都能有用。