微软面向开发者公布 HTML5 Metro 开发技术指引

微软今天在博客编撰了一篇有关HTML5开发Metro应用的文章,介绍了HTML5的技术意义以及应用程序开发人员如何用它来创建一个新的Metro7应用。微软的IE10已经完整支持HTML5,对于用惯了Visual Studio 2010和Expression Web等工具的开发者来说用这种技术来进行开发可以让自己的程序更轻量且更广泛地支持其它平台。

http://i.msdn.microsoft.com/hh335062.Satrom_Figure2_hires(en-us,MSDN.10).jpg

查看:Building Apps with HTML5: What You Need to Know

16 个对开发者非常有用的 JavaScript 库

编辑器:

1. CodeMirror

CodeMirror 是一款“Online Source Editor”,基于Javascript,短小精悍,实时在线代码高亮显示,他不是某个富文本编辑器的附属产品,他是许多大名鼎鼎的在线代码编辑器的基础库。

视频:

2. html5media

html5media是一个JavaScript音频/视频播放器能够让每一个浏览器都能够播放在HTML5多媒体标签中定义的多媒体文件。 对于不兼容的浏览器,该播放将采用支持Flash的FlowPlayer播放器来代替。

地图:

3. Gmap

GMAP3 插件用来将Google Maps插入到网页中,Google在其产品中已经提供了很简便的方法。但是GMAP3这个jQuery插件提供了更加简便的方法,特别是在使用一些高级功能时(如:overlays和callbacks)。

gmap3.jpg

图表:

4. JS Charts

JS Charts 是一款免费的基于javascript的轻量级插件,用JS Charts 绘制图表是很轻松地事,因为你只需要关心客户端的脚本。

5. Highcharts

Highcharts是一个制作图表的纯Javascript类库

6. Flot

PlotrPlotKit的启发,Ole Laursen基于jquery开发了一个图表绘制(WEB Chart)插件并命名为flot。

示例代码:$.plot($(“#placeholder”), [ [[0, 0], [1, 1]] ], { yaxis: { max: 1 } });

点击在新窗口中浏览此图片

7. Timeplot

Timeplot是一个基于DHTML的AJAX部件,用于创建时间序列、基于时间事件的图表。

可视化和绘图库:

8. Processing.js

Processing.js是轻量,易于了解掌握,并提出一个理想的工具,可视化的数据,创建用户界面和开发基于Web的游戏。

9. Protovis

Protovis 是一个可视化 javaScript 图表生成工具。

10. Raphaël

Raphaël 是一个小型的 JavaScript 库,用来简化在页面上显示向量图的工作。你可以用它在页面上绘制各种图表、并进行图片的剪切、旋转等操作。

安全相关:

11. Ad Safe

ADsafe能使Javascript广告更加安全。

ADsafe使放置在页面上的客户代码(例如第三方的广告脚本以及挂件)安全,ADsafe定义了一个JavaScript的子集,足以令客户脚本具有用的交互性,在此同时防止恶意或者偶然的破坏以及入侵。

存储:

12. TaffyDB

TaffyDB 是一个免费开源的 JavaScript 库,用于在 Web 上实现一个轻量级的数据访问层,也就是一个简单的数据库。

13. evercookie

evercookie 是一套想辦法在瀏覽器上留下可供紀錄的痕跡的 javscript library,支援非常多方法,想盡辦法產生類似 HTTP cookie 的效果。目前实现的方法借助了 flash 的支持。

14. jStorage

jStorage是一个简单的用于PrototypeMooToolsjQuery在浏览器端缓存数据(字符串,数字,对象,甚至是XML节点)的包装插件。

其他:

15. HeadJS

HeadJS, 异步JavaScript加载。其最大特点就是不仅可以按顺序执行还可以并发加载 js

16. Socket.IO

Socket.IO旨在让各种浏览器与移动设备上实现实时app功能,模糊化各种传输机制。

via webinsightlab

传微软将 ARM 版系统命名为 Windows RT

微软下一代操作系统将支持两类芯片,分别为X86和ARM架构,预期此举会面临品牌挑战。微软可能会选择两种品牌,而不是一个。据消息人士透露,微软告诉合作伙伴,它决定不使用Windows 8作为ARM芯片系统名,而是会使用Windows RT来替代。Windows 8将专用于X86芯片平台,之前微软已经支持很久了。

http://img.cnbeta.com/newsimg/120417/0740100753704504.jpg

Windows 8 Consumer Preview

Windows 8开发备受期待,不只是因为它引入了触摸功能,旨在帮助微软在平板式电脑中扮演更大角色。另外,对于ARM阵营来说(如高通、德仪、Nvidia),新操作系统也有利于帮助它们夺取传统笔记本电脑市场份额。

微软会为ARM平台的Windows 8推出一些相应的流行程序,如Word、Excel、OneNote等。

不过二者有一个大不同:Windows旧软件没法用在ARM版Windows中,只能用在英特尔、AMD芯片平台的Windows 8中。因此,一些分析师预测消费者走进店铺购买时会困惑,对于两类硬件的能力搞不清状况。

微软高管曾承诺会解决此问题。微软选择Windows RT作为ARM版Windows名称的原因不明,一般来说RM会作为“即时”的缩写。

文/搜狐IT

我不能胜任开发开源软件

事实上,我并非不能胜任——几年中我已经开发了很多开源软件。然而,在某种意义上,这又是事实:只有全职开发开源软件的程序员中的佼佼者才能得到报 酬,而我不是。Linus Torvalds(Linux之父)是其中之一,还有Guido van Rossum(Python编程语言创始人)。尽管Guido van Rossum只在开源软件上花了部分时间,没有将全部时间用在Python开发上。 考虑一下现实。Python已经成为了非常流行的编程语言,被很多公司和个人采用,并从中获益匪浅。但语言发明者甚至没有将全部时间投入其中。 这只是其中一例——也许Guido很享受在Phython之外的时间为Google工作这样的生活方式——但是我认为这从总体上代表了开源软件的现状。

就我而言:我写了很多小段的开源代码并得到了大家的认可。一些人甚至在Hecl的基础上开发了商用产品。但我还是不能够胜任全职开发开源软件——我不是那 种睿智且知名的程序员,他们在开发免费产品的同时有人为其支付薪水。然而,我是一名优秀的私有软件开发者,在寻找需要为我支付报酬的项目上我从未遇到太多 的麻烦。为什么会是这样呢?因为私有软件项目能够很快让资金回笼。如果人们喜欢这个软件并为其买单,公司可以用这些收入为开发者支付报酬。而尽管上百万人 使用开源软件并从中得到价值,但开源软件的开发者不能从中得到现金回报,他或她不能以此购买食物或支付房租。

所以,我能够很好地编程并贡献更多开源代码,但我还是要为私有软件编写代码,因为这能够支付账单。很明显,我会尽可能在这个过程中使用开源软件,并尽可能地回馈开源社区,但是“秘制调味料(商业秘密)”仍然是需要保守的。只是这双手不能创造更多的开源软件了。

我知道我不是一个人,换句话说——很多人在开源世界之外为私有软件项目工作,但是很少有人能够从全职开源工作中得到报酬。

所以,当我听到人们将版权作为开源软件的反例时,我感到有些怒不可遏。软件版权的保护和执行是一个复杂的争论,我不打算在这里展开讨论。这里我要指出的是 “事情并不只是看到的那样”。当然,开源软件的确存在。但是,需要多少资金才能支持开源软件正常运转呢?有多少开源软件因为没有必要的时间而一直只是开发 者脑中的设想呢?最近几年,尽管有大幅改进,人们还是经常批评“Linux桌面系统”。恩,如果有更多人能够从“枯燥的劳动”中得到报酬,比如可用性测 试,那么Linux的进步又将如何呢?Ubuntu和Redhat已经开始为一些做类似工作的人支付报酬,但在微软和苹果公司又有多少人在从事这样的工作 呢?

这并不是否认开源软件“行不通”或者其他的胡说八道。开源当然运作的很好,当然只有在以代码而不是金钱为货币时,开源才能真正的发扬光大。开发者能 够给与开源项目很多回馈,比如代码、bug报告、建议、文档等等,这让他们参与的项目变得更好。然而,开源在规模较小、快速变化以及以客户为中心的产品上 表现得并不尽如人意。我猜,99%的iPhone用户很少关心他们使用的应用程序源代码,而恰恰相反,绝大部分的Emacs用户至少写过几行Elisp代码。

在任何情况下,问题不在于打败开源软件,然而另一种反对“知识产权”的观点是开源软件本身已经“证明”了“软件生产过程都是一样的”。是的,可能它们是一样的,但是只对用户较少的情况下成立。毕竟,我们中的大多数都不能胜任开发开源软件。

英文原文:David N. Welton 编译:伯乐在线 – 唐尤华

科学家打造太阳系互联网:可接入月球和火星

目前欧洲空间局正在致力于通过研发开创性的技术为未来载人宇宙探索任务服务,比如未来在月球和 火星或者空间站上的宇航员可以通过空间互联网进行相互访问,甚至可以使用该网络控制一个探测器从轨道上降落到行星表面。环绕地球的导航卫星和来自国际空间 站上的宇航员都需要向地球发送数据,而如何共享这些复杂的信息则是将来空间互联网建设的发展重点。

科学家打造太阳系互联网:可接入月球和火星

未来宇航员登陆火星将使用空间互联网共享信息

在 将来,在火星上登陆的火星车或者月球上建立的基地,都将通过轨道卫星中继传输数据以及导航服务。宇航员飞往距离地球数亿公里的小行星任务中,就需要一个空 间互联网将宇航员、控制中心和先进的宇宙飞船上的系统连接起来。所有的这些行动都需要相互关联、进行网络化的管理。根据位于德国达姆施塔特的欧洲空间局控 制中心负责地面软件开发的研究人员内斯特·佩恰(Nestor Peccia)介绍:我们现在正研究如何利用现有的技术标准用于未来建设空间互联网,比如像移动电话、便携式计算机等接入标准能否应用于新一代的空间网 络。

事实上,我们未来工作的重点将超出网络的范畴,从目前欧洲空间局和美国宇航局在轨 道上的数据交换以及实时共享可以看出,在不同轨道飞行器与地面控制中心之间,需要建立起有效的连接网络,其中也包括通过这个网络来对探测器进行导航以及飞 行控制。自1982年,来自欧洲空间局、美国宇航局以及其他空间机构和企业的专家们都进行定期的会晤,以发展新的、开放式的数据通信标准,这个计划现作为 空间数据系统咨询委员会的一部分。多个空间机构、商业航天公司和卫星制造商承诺正在研发适用于空间硬件和数据交换的标准,甚至可在短时间内实现。

在 将来,轨道卫星之间发生信息传递的需求量将出现增长,各型探测器和轨道飞行器之间将通过无线电建立起强大的互联网络,甚至在火星轨道上正以每小时数千公里 飞行的探测器也将纳入到这个网络中。在2008年5月,欧洲空间局的火星快车号火星探测器承担了美国宇航局凤凰号着陆器的数据中继传输站,在凤凰号进入火 星大气层并降落在火星表面的过程中,前者都扮演了中继通讯的重要角色。在今年8月份,美国宇航局火星科学实验室“好奇”号火星车登陆火星时,火星快车探测器还将进行中继数据传输服务。

2011 年2月,欧洲空间局位于全球各地的地面追踪站为俄罗斯火星探测器火星探测器火卫一-土壤(Phobos-Grunt)提供了每日三个小时的数据互联任务, 然而,该探测器却在发射后不久被宣布发射失败。今年10月份,欧洲空间局宇航员安德烈·凯帕斯(André Kuipers)在国际空间站上练习远程控制位于欧洲空间局操作中心的地面机器人漫游者,这项测试用于模拟轨道卫星与登陆机器人之间的通信链,比如火星。 科学家们希望宇航员、行星登陆无人控制平台以及地面控制中心之间建立稳定的通信链接,形成高效的工作模式。

设置技术标准和通信系统的体系结构并不是空间探索领域最高的技术要求,但是这项技术显然是外层空间探索顺利进行的重要保证,比如派遣宇航员前往火星。在4月 16日至19日,来自超过20个国家的空间机构聚集德国达姆施塔特,其中包括美国宇航局、欧洲空间局、法国国家太空研究中心、意大利航天局、德国航天飞行 中心以及日本宇航探索局等将就建立庞大的空间互联网进行讨论。

文/腾讯科技