Web版的VNC
想在Web上远程控制远端的电脑吗?Guacamole开源项目提供了这样的解决方案,其主要使用了HTML5和Ajax。下面是一个载图。如果你能够访问Youtube的话,你可以看看这个视频。
是啊,HTML5强大了,什么都能干了,连Flash也要取代了。现如今,什么事都在往Web上移植了,Chrome也OS了。可以预见在HTML5出来后,未来这样的事情会越来越多,以后的一些移动和掌上设备真的只需要一个Web Browsers.
想在Web上远程控制远端的电脑吗?Guacamole开源项目提供了这样的解决方案,其主要使用了HTML5和Ajax。下面是一个载图。如果你能够访问Youtube的话,你可以看看这个视频。
是啊,HTML5强大了,什么都能干了,连Flash也要取代了。现如今,什么事都在往Web上移植了,Chrome也OS了。可以预见在HTML5出来后,未来这样的事情会越来越多,以后的一些移动和掌上设备真的只需要一个Web Browsers.
大家看到标题后的第一个问题可能是:“我们需要这样做吗?”
如果我们开发的是局域网 Web 应用的话,可能没有必要这样做。但如果我们的 Web 应用面向的是互联网上的成千上万的用户,这样做就很必要了。因为在现实世界中并不是所有的用户都有高数率的网络连接,也许用户使用的是拨号接入,移动设备,3G,或者是 USB 网络加密狗。如果我们没有在低数率的网络环境中测试过我们 Web 应用,极有可能在上线后收到一些意想不到的关于系统性能方面的抱怨。这个时候无论我们的 Web 应用界面多么地 Web 2.0,功能多么地强大,对于用户来说都失去了使用价值。
目前有很多工具能够模拟慢速网络,值得一提的是 Firefox Throttle,这是一个 Firefox 插件,你可以设置上载和下载的数率,并且监控当前带宽的使用情况。另一个非常有用的特性是它可以控制你的 localhost 的连接数率,对本地测试很有用。
Firefox Throttle 的截图
另一个工具是 Sloppy,它是一个 Java Web Start application。
不知道大家有没有注意到StakeOverflow的404错误页面?其显示了下面的这个图片:
这个是一个很有意思的图片,不知道你看懂了吗?看上去像Python,又像 Ruby,还像 Perl,当然也有 C的影子,还有Brainfuck。是的,这是一个杂交程序,杂交了Python,Ruby,Perl,C,还有Brainfuck(注意其中的#号),所有的语句都是输出“404”字符串。
关于这种杂交程序,本站以前也发布过《C语言和sh脚本的杂交代码》,大家可以前往一看。这样的有趣的玩法叫“Polyglot”,也就是说,把N种语言写在一个文件中,然后,该文件在任何编译器下都可以运行,上述的那段代码在Python,Ruby,Perl,Brainfuck下都可以正常运行,也可以被C和的编译器编译通过,并被运行。
下面是这个图片的字符码,以供各位试试。
首先一个先给大家介绍一个HTML5的资源网站:http://www.html5rocks.com/ ,在这个网站上,有三个子站:
第二个,给大家推荐一个Javascript库,叫——DragDealer。这个JS主要是处理Web上的各种拖动效果,脚本很小,在没有压缩的情况下也只有12K,而且没有任何的dependence,使用起来也比较方便。
第三个,是Apple的Showcase,我们都知道,iPhone不支持flash,但支持HTML5,大家可以点下面这些链接看看Apple公司自己做的HTML5的一些效果。当然,有一些需要safari浏览器。
下面这篇文章是从StackOverflow来的。LZ面试的时候遇到了一道面试题:“如果有三个Bool型变量,请写出一程序得知其中有2个以上变量的值是true”,于是LZ做了下面的这样的程序:
boolean atLeastTwo(boolean a, boolean b, boolean c) { if ((a && b) || (b && c) || (a && c)) { return true; } else { return false; } }
面试官接着问到,请对你的这个程序改进一下,但LZ不知道怎么改进,于是上StackOverflow上问了一下,下面是StackOverflow上的众网友的回答。再往下看的时候,希望你自己能先想一想怎么改进。
下面这个网站是关于伦敦地铁实时的运行图:http://traintimes.org.uk:81/map/tube/
这是个很有意思的网站,其数据是通过伦敦政府发布的TfL API获得的,然后再加上Google Maps的API,于是就有了这样的一个页面。很不错哦。
从这个事情,我们可以得到,英国的信息化的发达,首先地铁部门有实时监控的数据,然后以Web API的方式发布,从这点看来,我国的信息化水平还很差。主要是钱都投到G/F/W上去了。
以前本站发过“1980年和2009年的1GB电脑内存的比较”,下面是2000年的iMac和2010年的iPhone的比较。
2000 – iMac
操作系统 – Mac OS 9.0.4
处理器 – 500 MHz PowerPC G3 CPU, 128MB Memory
显示卡 – ATI Rage 128 Pro, 8MB of memory (8 million triangles)
屏幕- 786K pixels
数据传输速度 – 1.3-12.5 MB/s (DVD-ROM-1/100 Ethernet)
存储设备 – 30GB Hard Drive
显示器 – 15.0 x 15.0 x 17.1 inches
重量 – 12.25公斤
2010 – iPhone 4
操作系统 – iOS 4.0
处理器 – 1 Ghz ARM A4 CPU, 512MB Memory
显示卡 – PowerVR SGX 535, uses system memory (28 million triangles)
屏幕 – 614K pixels
数据传输速度 – .04-20MB/s (3G-WiFi)
存储设备 – 32GB Flash Drive
显示器 – 4.5 x 2.31 x .31 inches
重量 – 136克
那么,2020年的产品会是怎么样的?
SmokeScreen是这样一个开源软件,它可以把Flash的swf文件转成Javascript/HTML5,它的口号是:Flash without plugin。为什么要这样做呢?它说主要是因主Apple的iPhone/iPod/iPad不支持flash,而且看似Steve Jobs也不愿意在以后支持flash。所以,他们搞了这样一个玩意。目前,这个开源软件还在开发阶段,在其主页上,你可以看到一些Demo,在Chrome上看上去很不错,虽然还有一些小问题,不过已经很不错了。
HTML5几乎颠覆了原来的HTML,其可以让你用HTML不单单只是做网页布局,而且还让你可以开发更强的东西,比如:WebSockets,使用这项技术,已经有人在搞Web版的Quake 2了(http://code.google.com/p/quake2-gwt-port/),还有Google的3D Javascript API,所以,把swf完美地转成Javscript/HTML5可能也只是一个时间问题。
虽然,HTML5还在draft阶段,而且很多东西都和flash重复了。所以,加上iPhone的推波助澜,发生这样的事情也不奇怪,不知道adobe会怎么想?也许adobe目前对其AIR或是Actionscript还抱有希望,虽然有这样一篇文章力挺Flash,但未来真的不好说,adobe会使用HTML5/Javascript来作为其flash的引擎吗?如果不这样的话,我相信总有一天,会有人开发出HTML5/Javascript的IDE。而且,有理由相信,一旦在未来所有的浏览全面支持HTML5,那么我们可以想像,这个世界可能几乎所有的桌面应用都会被Web所取代,这个进程可能会越来越快。让我们拭目以待。
硅谷传奇创业者+精神领袖 Guy Kawasaki最近写了一篇新文章总结了以下5种说服他人的技巧。希望对大家对付老外有帮助。摘要如下:
原文link
这两天,Google的logo换成了那个经典的吃豆游戏,很强大,也引发了大众的热议。如果你想要其源代码的话,你可以到这里下载:http://github.com/macek/google_pacman。而在线演示在这里:http://macek.github.com/google_pacman/。
需要注意的是,那个源程序在你的本机是不会有声音的,因为这跟flash的设置有关系,如果你需要有游戏声音,你还需要有以下的设置:
1. 打开 Adobe Flash Control Panel: http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html 2. 点击Edit Locations
3. 点击Add Location
4. 浏览你的google_pacman
目录 5. 点击Add
需要注意的是,这个源程序并不是Google官方发布的,只不过是某些好事者的网友发布的,不知道在日后的Google的Logo归档中是否会见到这个Logo。顺便说一下,根据 Google官方BLOG,这个程序是由 Marcin Wichary 和 Ryan Germick做的。真是又应了那句话——“如果一个应用能被Javascript实现,那么其最终会被Javascript实现”。