Google推出inbox的一点思考
前一天就看到Rumor说Google有一款inbox产品要发布,没想到今天一早就看到+Sundar Pichai 发了一Po 说发布这个产品了。第一时间申请了邀请码,可是到目前为止也没见邀请码的踪影,也就只能从一些介绍,截图,视频中看到一些端倪,也由此写下一些想法。
改变
Gmail发布已有10年,这十年时间Gmail改变了人们使用邮箱的习惯,而这十年变化的东西太多了,邮箱这一概念早被人说是应该淘汰的东西,时至今日邮箱却依然还是日常生活,工作交流中很重要的一个环节,可是邮箱亟需要变革,不仅是作为用户而言,并且是邮箱服务提供商应该需要思考的问题,越来越多的垃圾邮件,越来越多的不必要的邮件出现在用户的收件箱。而今天Gmail团队给自己的服务一个evolution,虽然Gmail已经在不久前启用了分类服务,能够帮助过滤一些无用的邮件,但可能Gmail团队觉得还不够,他们要以一种智能的方式帮助用户收发邮件—-他们在官方博客上这样说:designed to focus on what really matters. 用户只需要关注他们真正需要关注的。改变总是好的,无论这个改变是好是坏,改变意味着不满足与现有的状态,期望以一种理想的状态而活着。所以无论这个服务是否会像waze失败,最后总会有收获。
图片来自verge
UI设计、功能变革
那就来看看这个服务让人耳目一新的功能,首先让人眼前一亮的就是UI的设计,无论是Web还是移动端,简直就是Material Design的推广,靓丽的颜色配合着无比流畅的动画,首先让使用者的体验就很爽朗。其次就是博客中宣传的:Bundles,Highlights,Reminders, Assists, and Snooze,这三个功能构成inbox的主体,虽然Bundles就是Gmail中的不同Tab分类,Highlights应该也就是Gmail中的星,Reminders,Assists,and Snooze也就是Gmail中的工作表,可是inbox给使用者的感受是不一样的,让我想到的第一个词语就是GTD,getting things done. 这个词我第一次接触是在本科上的一门校外选修课上老师讲的。邮箱的作用难道不是这个吗?原来我们转了大大的一圈又回到了邮箱最原始的作用,帮助工作生活交流,Gmail原来一种时间乱糟糟的顺序给我们安排,而inbox是以一种事情重要程度,get more import things done first.
背后算法
说到inbox这里,就不免让我想起Google Now,想起Andrew Ng的机器学习,Google Now是Google推出的个人助手,机器学习是一门公开课,我们这学期也在学,inbox能够提供这样的一种服务,Google要在背后做的运算是及其大的,如果要做的更加智能要做的或许更多,一封邮件重要与否,一封邮件对于某一个个人重要与否,都需要背后很强大的算法计算得出。而同样你得提供更多的数据,所谓的给予的多,收获的更多。当然这只是我片面的想象,背后的数据谁也不知道,除非你去问Google的employee们。
inbox展望
inbox作为Gmail的一个革新,无论如何我都是期待的。目前我还没用过还不知道真正的使用体验也就不好说什么了。只是Google各种产品的混乱逻辑也我也弄不清楚了,虽然Gmail一直有工作表这样的功能,但却把GTD的功能做的很烂,虽然之前的keep也有GTD类似的功能,却放在类似记事本一样的笔记类应用中。当然那些产品加上那些功能也不是多此一举,却一时间让人无法选择。我原本以为所谓的inbox应该是所有服务的一个inbox,当然Gmail是最最最重要的一个inbox,而Google+的通知呢?在Web上无处不在的通知难道不应该出现在inbox中?Blogger的评论呢?YouTube制作者的评论呢?或许那死了的Reader还有那个你关注的博客又更新了一篇文章呢?我原本以为的inbox是那样的,最后的结果是我真的想多了。
但转念一想,或许不久Google Now能够给我们提供吧,期待未来。
Android 4.4 Kitkat
Android 4.4 Kitkat
From:Developer Android站在开发这角度,消费者角度请看for consumer
- 可供512M内存手机使用
- Host Card Emulation(HCE),NFC相关
- 打印
- 打印机厂商可以用API打造自己的打印程序,用户可以在任何地方操作自己的打印机(Android@Home时代的到来啊~~)
- 转化成PDF打印
- 4.4预装Google Cloud Print,预装APP,如Chrome,Drive,Gallery,QuickOffice可以使用云端打印
- Storage access framework 用图片比较容易说明问题


- 低能耗感应器
- hardware sensor batching,你的App在屏幕关闭或者系统休眠时依然能够使用感应器 目前只有Nexus 5有效,Android正和其他芯片厂商合作,争取将这个功能带给更多的设备
- Step Detector and Step Counter ,步数检测与步数计数新API,同样目前只适用于Nexus 5
- SMS provider , 这个不用解释,新短信API,以前没有API能够write入短信的provider,现在可以了.
- 全屏模式 Full-screen Immersive mode , 隐藏状态栏(status bar),导航栏(navigation bar),即使有屏幕交互情况也不调出状态栏和导航栏,之前版本Android也是可以全屏的,但是只有点击就会显示状态栏和导航栏
- 新手势,从屏幕上边缘滑下,或者下边缘向上滑可调出系统UI(状态栏和导航栏)
- Transitions framework for animating scenes ,高质量的动画场景,TransitionManager
- 半透明系统UI(translucent system UI styling),这个不用解释
- 通知栏增强,能够显示文本,图标,图片,进度,计时等等
- Chromium WebView
- 屏幕录像(Screen recording)
- 使用
SurfaceView.setSecure()
阻止录像,保证内容安全性 - 通过Android SDK中adb tool使用
adb shell screenrecord
录像功能,或者在Android Studio DDMS面板使用
- 使用
- Resolution switching through adaptive playback
- Common Encryption for DASH
- HTTP Live Streaming
- Audio Tunneling to DSP , Nexus 5 offers a total off-network audio playback time of up to 60 hours, an increase of over 50% over non-tunneled audio.这句话不用翻译吧,也就是离线关闭屏幕听歌可以将续航能力提高一倍
- Audio monitoring
- Loudness enhancer
- Audio timestamps for improved AV sync
- Wi-Fi CERTIFIED Miracast™
- RenderScript Compute
- GPU acceleration
- RenderScript in Android NDK
- Graphics
- GLES2.0 SurfaceFinger
- New Hardware Composer support for virtual displays
- New Types of Connectivity
- New Bluetooth profiles HOGP, MAP, and AVRCP
- IR Blasters
- Wi-Fi TDLS support
- Accessibility
- System-wide settings for closed captioning 使用VideoView的App可以使用一个新的API将字幕传送给视频
- Support for international Users
- Drawable mirroring for RTL locales 从右先左显示
- Security enhancements
- SELinux(enforcing mode)
- Improved cryptographic algorithms
- Tools for analyzing memory use
折腾电信版Galaxy Nexus(i515)
入手一电信版Galaxy Nexus(i515,Galaxy Nexus Verizon),买的时候就是叫商家刷的CM的系统,回来一看还算满意,CM10.2 8月份的版本,Android 4.3很新,唯一让我不爽的就是3G有问题,一方面上不去ingress,一方面在开启3G情况同时开启WIFI,关闭WIFI之后3G就再也连接不上去了.于是我根据商家给的ROM,找论坛,Google,折腾一下午才算有点眉目.先来晒两张照片
Galaxy Nexus GSM(i9250,maguro) and Galaxy Nexus verizon(i515,toro) |
关于ROM
商家给的刷机包名称(cm-10.2-20130803.1043-SKANK-toro.zip),这一看就不是原生的CM系统,肯定针对Verizon版做过一定修改.于是我找到了论坛上这则帖子 [Android ROM] 完美3g cm10.2 非官方版4.3 8月6号更新 淘宝商家肯定是下的这个ROM给我刷的.根据这个帖子,我找到了修改这个ROM作者的官网 , 我自己下载了最新版的刷入了,可我发现3G出问题了,怎么都连接不上3G网络.我知道这肯定是基带的问题了.
附加:ROM作者在XDA上的Thread
关于基带
商家给我刷的是toroplus_for_toro_cdma_radio_FG01.zip , 最后我还是用了下面帖子中的GA02基带.这里要非常感谢Google+ +郭极 和+郑科 两位给我的有用信息.在这则帖子里,郑科留言中提到的最新3G补丁(百度云),我一刷入马上就能连上3G了.
而我把帖子里面提到的各种东西都贴在这里,或许有人会有用到.
最新基带 http://forum.xda-developers.com/showpost.php?p=30942870&postcount=400
写号类似问题,参考帖子
http://www.diypda.com/thread-815189-1-1.html
http://www.diypda.com/thread-802263-1-1.html
刷下面3个东东解决3G等问题
最新3G补丁 http://pan.baidu.com/share/link?shareid=350920&uk=3054546283
GA02基带 http://pan.baidu.com/share/link?shareid=350904&uk=3054546283
还有推荐刷这个内核,省电 稳定 http://pan.baidu.com/share/link?shareid=349529&uk=3054546283
先刷完AOKP ROM 然后GAPPS 然后刷内核,再然后GA02基带,最后3G补丁
如果上面链接全部失效,请点击这里
Play Store问题
另外一个问题就是Play Store上不去的问题,我最后的结局方案就是刷了PA的GApps包,并且使用了Market Unlocker这个APP,不但解决了Play Store上不去的问题,连相机Sphere模式一并解决了.一些我认为有用的材料
[教程] (12月17号重新编辑)全民3G,首发三星I515 完美3G教程http://www.diypda.com/thread-812093-1-1.html
C网玩家GN专区 http://galaxynexus.diypda.com/
XDA http://forum.xda-developers.com/forumdisplay.php?f=1455
Galaxy Nexus Root 4.2.2
准备工作
Root你的手机需要用到以下工具 ClockworkMod (CWM) Recovery 6.0.2.3 第三方的recovery SuperSU v1.04先决条件
- Galaxy Nexus I9250应该运行的是Android 4.2.2 JDQ39固件.你可以到"设置"-"关于手机"查看版本号码
- Galaxy Nexus手机的USB驱动要安装好
- 开启USB调试模式
- 在root之前备份你的数据,应用和设置
- 你的手机最好有充足的电量
- PS.以下教程针对已经解锁的GN手机
Root
- Step1:下载 SuperSU v1.25
- Step2:将手机用USB线与电脑相连
- Step3:将SuperSu zip文件拷贝到手机SD卡目录,确保你能够找到这个文件(最好在SD卡根目录)
- Step4:下载 recovery-clockwork-touch-6.0.2.3-maguro(recovery-clockwork-touch-6.0.2.3-maguro.img)解压获取压缩包中img文件
- Step5:进入Fastboot/bootloader模式.关闭手机,等待手机关闭之后,同时按住音量上+音量下+电源键,等待数秒
- Step6:运行命令行进入有recovery-clockwork-touch-6.0.2.3-maguro.img文件的目录,运行一下命令:
fastboot flash recovery recovery-clockwork-touch-6.0.2.3-maguro.img
- Step7:在fastboot界面选择recovery选项,你会进入新刷入的ClockworkMod recovery
- Step8:在ClockworkMod recovery,选择"flash zip from SD card"
- Step9:利用电源键选择"choose zip from sdcard"
- Step10:使用音量键选择"UPDATE-SuperSU-v1.25.zip",用电源键选择
- Step11:一旦刷入成功,选择"reboot system now"重启手机.成功
1、按照我的步骤root不会影响OTA更新,因为在退出recovery模式时提示是否清除recovery flash,你要选择No,这样重启后recovery会自动恢复官方版本(不过OTA之后需要重新root);
2、万一你选择了Yes,也没关系,官方镜像已经出了,重新刷入官方镜像的recovery即可;
3、这里提供的clockwork recovery是触屏版的,直接用手点就可以了,不过小心别点错了。
个人认为这种root方式最完美,因为几乎没有改动任何文件,而且几乎适合任何机型。
4.2.2 takju官方recovery
参考:1 2
Google的DNS服务器
DNS服务器
DNS叫做域名解析服务,DNS服务器在现在的网络环境中有着非常重要的作用,DNS服务器扮演的角色就是将你在地址栏中输入的域名(比如,www.google.com)解析成IP地址,然后通过IP地址去访问该网站,所以解析域名的快慢直接影响到你访问网站的速度.所以Google在2009年推出了Google的DNS解析服务DNS劫持
DNS劫持就是通过劫持了DNS服务器,通过某些手段取得某域名的解析记录控制权,进而修改此域名的解析结果,导致对该域名的访问由原IP地址转入到修改后的指定IP,其结果就是对特定的网址不能访问或访问的是假网址,从而实现窃取资料或者破坏原有正常服务的目的。DNS劫持通过篡改DNS服务器上的数据返回给用户一个错误的查询结果来实现的。DNS劫持症状:在某些地区的用户在成功连接宽带后,首次打开任何页面都指向ISP提供的“电信互联星空”、“网通黄页广告”等内容页面。还有就是曾经出现过用户访问Google域名的时候出现了百度的网站。这些都属于DNS劫持。
再说简单点,当你输入google.com这个网址的时候,你看到的网站却是百度的首页。
参考
中国特殊的网络环境,有的时候通过修改DNS服务器就能让你上网的速度更快,能上的网站更多.
如何设置DNS
言归正传,在Windows 7下设置DNS,只要在"网络与共享中心"-本地连接-属性-Internet协议版本里面设置DNS服务器就行了.IPv6 DNS服务器地址:
2001:4860:4860::8888
2001:4860:4860::8844
IPv4 DNS服务器地址:
8.8.8.8
8.8.4.4
如果身在一个IPv6的环境使用IPv6的DNS服务还是挺快的.
其他
我在其他网站上面还看到有未被透露的Google DNS服务器地址:4.3.2.1 很可惜我做Ping测试和nslookup测试的时候,这个地址已经不行了.参考:1 2
Google Reader之死----另一種意義上的重生
看這篇文章前,有幾篇文章想先請讀者看看,這些文章都是我看過之後久不能忘的:其實今天離Google Reader正式宣布到7月1日關閉已經有好久一段時間了,說實話當時聽到這個消息我也很震驚,但經過這段時間的閱讀別人的文章,別人的評論,心態漸漸平息下來,這件事情在一定的圈子中的震動確實挺大。
我使用Google Reader其實並不是很早,我在10年12月份才註冊,深度使用的時間也並不是很長,但Google Reader才是我真正的個人資料庫。有段時間我在尋找電影的時候都是先到Google Reader中搜尋的。而現在談這一切都是空的了。
- 緩存了許多被刪除的文章,有些博客,有些文章可能被作者,或者其他因素刪除,但是Google還會將它保存在服務器中
- 強大搜索功能,出現在Google幾乎所有產品中的搜索欄,除了Google Search之外用的最多的就是Google Reader中的搜索了
- 個人知識庫,分類,標籤,加星,Google Reader可以讓我在一個地方閱讀到我關注的所有網站的內容,並且能夠分類整理,標記,使用時間長久之後就是個人知識存儲的最好的地方了
其實最最痛苦就是背了那麼多快捷鍵,現在卻要轉移使用的平台,重新學習。Google Reader關閉這件事情改變了我對Google的一些看法,我之所以不用很多國內的服務重要的一點原因就是我不信任那些公司能夠保護好我的數據,對於我來說我所擁有的僅僅是那些數據而已,我不希望我的很多年的數據在他們的服務總結之後就在無意義,另外一個重要的原因是我知道國外的服務是不會胡亂刪貼的,我不希望我辛辛苦苦敲出來的東西,別人輕輕一點鼠標就沒了。而這次Google Reader服務的關閉在一定程度上改變了我的一些想法。但是我能理解Google,虽然我也抱怨过,但是现在更加平静。至少Google给出了相当充裕的时间来给我们转移自己的数据,并且提供Takeout来下载我们数据。这样至少能够保证我的数据不会丢失。
有些人由这件事情谈到Google在价值观上的改变,其实我觉得那些真的没有必要,虽然现在Google确实有些让人不懂,但是真的没有必要扯上那些阻碍“信息”自由流通之说,就像土木坛子说的那样,好的文章自然会在互联网上自由流通,接受时间的洗涤并沉淀。或许我们的思维应该跟随着时代的变化去更进一步的思考,我这里没有说RSS过时,没有说Google Reader过时,只是我觉得Google Reader不会就这么样死去,RSS还有用武之地(具体RSS是什么参考文前给出的文章)。Google+首席架构师在Google+上的一则Post中向我们保证了Google Reader这个产品中的一些特征会在Google将来的产品中体现出来的。
反正Google Reader关闭这件事情,我特别矛盾。Google下定决心关闭Google Reader会给其他小厂商很多机会,而Google是否有了Google Reader的替代品,或者已经考虑清楚之后的事情,Google却一点消息都没有透露。我期望着Google会发布另一款重磅级的产品来代替Google Reader,可是我觉得是我想多了。不过我还是期待着奇迹,期待着重生。
更多假想图
等到6月份的时候,再来看看有什么替代品吧。
Google产品
想写一系列介绍Google产品的文章,原因是惊讶于身边的人一直以为Google只不过是一个搜索引擎公司。身边很多同学,他们都很多的需求要解决,却都不知道那些需要的服务Google早已经为他们解决。那些在开学初老是忘记教室的同学,Google Calendar可以完美的解决这样的问题,最近还看到过国内的大学生团队开发出来课程格子的应用,这样的应用在Google Calendar面前是多么的弱;还有写同学寻找长篇大段的翻译工具,虽然国内网易有道,各种翻译做的都还不错,可是很多人却还不知道Google Translate Toolkit可以上传文档,结合机器和人工翻译来给大段文字翻译;还有很多很多,虽然我一直推荐身边的人使用Google的各种服务,他们却只因为上不去而弃Google而去,以至于我竟然听到有同学因为百毒能够保存搜寻记录如此先进而感慨。悲凉由心底升起。我一遍一遍的反复说明,我也会烦,所以以后不管谁问我,我都不会再劝他/她。他/她用什么服务跟我没有关系,我尊重他/她的选择。
好了,不多说了,下面规划一下想写的内容
第一篇
Google搜索--老本行
Google依靠搜索起家,没有搜索支撑,Google也就什么都不是了。现在到不是说Google Search对Google 公司的影响,而是Google Search对我的影响。从对电脑一无所知到现在已经快三年了,三年时间不短也不算长,这三年里Google到底解决了我多少问题,我已经无从得知,从Google 18000+条搜索记录中零星或许能看到点什么,但是Google伴随着我的成长,现实生活中或许没有一个这样的人能够在三年的时间中告诉你生活社会的点点滴滴,但是Google却对我的生活造成了很大的影响,无论是学习上的,还是社会生活中的。在使用Google Search的过程中,渐渐的积累了一些经验,在参考互联网上无数的优秀资源之后,Google Search才渐渐的变得随心所欲。搜索远远不是只是关键词的简单搜索,搜索靠得是经验和搜索的技巧,如何快速的找到答案需要技巧及生活的经验。
第二篇
Google Image Search--颠覆了图片搜索
虽然我也并不是经常Google图片搜索,但是Google图片搜索却总是能在最关键的时刻帮助我解决各种各样我形容不出来,归纳不出关键词的问题。我经常使用Google图片搜索的几种情况如下:
- 为Blogger,PPT,Word等各种演示配图
- 为寻找一个更高像素的图片
- 为了解现实生活中看到的各种图片的意义,或者为找到一张海报,或者为找到图片上的人物
- 或者为找到一战图片背后的故事
Google Image Search 官方博客,视频宣传
TinEye 以图搜图
Goggle 伊万麦克雷哥
第三篇
Google Map
很久以前大家从来没有想过做地图,只有Google默默的在贡献着什么,一点一滴把地图服务做得人尽皆知,渐渐的大家都看到了地理信息的重要支撑,于是苹果踢去Google Map,于是诺基亚跳出来推出了Here,于是百毒成立了LBS部门,于是大家突然对地图都感兴趣起来。而Google依然默默的一步一步的走着,从没有高调的宣传,从没有频繁的广告,有的也只是Google YouTube频道上简简单单,轻轻松松的娱乐小短片,有的也只是官方博客上对各个功能的介绍而已。但是Google注定要走在最前列,街景小车带来不了任何利益却开遍了全世界,甚至是海底。
分布为Google Map网页版,Google Earth
第四篇
Google YouTube
YouTube或许在一些大陆人眼里只是能够播放违禁短片的非法网站而已,可惜YouTube早已成为向全世界广播个人的平台,这也是为什么YouTube会在08年获得皮博迪奖,因为YouTube代表着公平,自由,没有大号小号之分,每一个人只要拥有一个账户就能有自由的发表自己的观点,或者向别人分享自己拍摄的视频。她的广告语“Broadcast Yourself.“简单,却不一定每一个人,每一家公司都能做到。YouTube几乎已经成了我网络上唯一的播放器,国内的优库,土豆不是广告比视频还长就是广告比原视频还流畅,或许国内也就只剩下搜狐视频用来看看美剧了。
第五篇
Google Photo
也就是Picasa,曾经的图床,曾经的网络相册,曾经PC端很方便的图片管理软件,在Google+发布之后被Google整改到Google+,虽然原先的入口依然还存在,Google首页显示的却已经是Google Photo,这也就是很多人说“可能哪天YouTube也会变成Google Vedio”。Google的太多服务如果没有在主页表明,入口都很难找到。Picasa在2004年被Google收购,到今年已经8个多年头,Google对Picasa的更新越来越慢,Google Picasa却依然被评选为“我最喜欢的图片浏览工具”。Google或许意识到更新PC平台的软件对自己架构云计算一点好处有没有了,现在如果网速够流畅,直接在浏览器里可以通过Google+自带的Picnik处理,还有其他网页直接能处理图片的Aviary,Pixlr等等等。总之目前阶段还摆脱不了PC,Picasa总是要装的软件,至于5年,10年之后Chromebook能不能和PC瓜分天下就另说了。
第六篇
Google Blogger
世界上最大的博客发布平台,".blogspot.com",这个中国没多少人知道的二级域名在互联网的却有着举足轻重的分量。Blogger在自己的官方的内容政策中这样写道:
“Blogger 是一個能讓您通訊、自我表達和自由發言的免費服務。 我們相信 Blogger 會不斷增加資訊的可用性,鼓勵健康且正面的討論,讓人與人之間建立新聯繫。所以这样一个服务注定是不能也不会在大陆生根发芽的。
我們尊重使用者對選擇分享之內容的擁有權和其責任。 我們深信審查這些內容與基於言論自由的服務有所扺觸。
為了維護這些價值,我們必須抑制濫用,保障我們提供此服務的能力並鼓勵言論自由。 因此,可使用 Blogger 的內容有數種範疇。 我們已定義的範疇是根據法律上的要求並增強整個服務。”
第七篇
Google Mail(Gmail)
Google的邮件系统,在愚人节推出,在我写Gmail技巧之前你应该看看我曾经转过的一篇文章”我们应该向Gmail学习什么“,Gmail作为一个邮箱系统为什么能够打败Hotmail,Yahoo Mail,其中有很多值得思考的问题。
Google Reader
Google Drive
Google Android
Google Chrome
Google Calendar
Google Plus
Google的產品多得如同天上的星星,即使是深度用戶都有可能有沒用使用過得產品,但是自從 +Larry Page當了CEO,Google大刀闊斧的砍掉了很多項目,其中包括很受歡迎的Google Reader。
總之不管怎麼說,這篇算是個開篇吧。
Google Reader为什么会关闭
Google Reader为什么会关闭:Google日前公布了新一轮的Google服务清理计划,另人惊讶的是,这次竟然轮到了Google Reader,Google宣布Google Reader将会在今年7月1日正式关闭,用户和开发者可以导出其中RSS数据,并使用其他的RSS订阅软件代替。这个消息一经发布,立即引起业内大哗。
世界各地的社交网站上充斥着抱怨、惋惜和无奈,对于Google的这个决定,有人联名抗议,有人愤怒谴责,有人无奈接受,有人开始寻找替代品,还有一些其他RSS应用忙着抢用户。
那么,Google为什么会不惜冒犯众怒而关闭Google Reader这个产品,其背后的原因到底是什么呢?
Google Reader的简介
Google Reader是Google于2005年推出的一项RSS阅读器服务,普遍被认为是世界上最好的资讯订阅服务,迅速吸引了技术爱好者、IT互联网行业从业者以及传统媒体和对信息比较敏锐的人群的使用。Google Reader之后发布了很多社交网络方面的功能,获得用户的大量好评,并曾经营造了一个不错的社交圈,一度曾被认为是最有价值的Google服务之一。然而,2011年谷歌推出社交网络Google+,Google Reader经历过一次大改版,全部社交功能被删除,其分享功能被引向Google+,新版Google Reader引发大量争议,很多用户表示抗议,然而谁都想不到,Google突如其来的决定会让Google Reader服务走向灭亡。
Google Reader的产品特点
1)优点Google Reader做为一款RSS阅读器,和RSS有着密不可分的联系,RSS技术能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新。读者使用RSS阅读器软件,可以在不打开网站内容页面的情况下阅读支持RSS输出的网站内容。
使用RSS阅读器的一大优点就是高效、快速的获得资讯信息,其订阅功能还可以实现个性化阅读,让用户只关注自己感兴趣的内容,有利于专注和深度阅读。
此外,RSS追求的干净、纯粹的阅读体验,通常RSS上没有广告信息的干扰,可以让读者获得优质的阅读体验。
对于中国用户来说,Google Reader还有一些特殊的功能令人喜爱,就是让中国用户能方便的阅读墙外的新闻,对于中国用户来说意义重大,例如世界最大的博客系统blogspot上的博客无法从中国直接访问,但中国用户只要订阅了blogspot博客的RSS,就可以方便地进行全文阅读,除此之外,Google Reader还可以用于备份博客,有些人的博客已经不存在了,但是从Google Reader上依旧可以阅读其早先的博客存档,这类似百度快照那样,将信息资讯都永久的保存下来,供有需要的人随时查询。
2)缺点
RSS阅读器也有一些缺点,其一直都没有很成功的商业模式,由于RSS阅读器追求纯粹的阅读体验,这使得广告内容难以存在,即使在上面发布广告,通常也点击率也非常低,无法维系产品发展。
此外,RSS阅读器对用户要求很高,要求用户具有很好的信息管理能力,能独立甄别哪些是好的RSS订阅源并加以订阅,否则的话,很容易引发信息过载,读不到自己需要的信息,却有海量的信息处于未阅读状态。
Google Reader的社交之路
在Google Reader发布的初期,RSS阅读器市场可谓群雄逐鹿,Blogline、NewsGator等老牌阅读器都有大量忠实用户,但Google Reader凭借着稳定的服务和优异的使用体验,快速地崛起,并于2007年跃居市场份额第一。2008年的时候,Google Reader开始了社交化探索,推出了好友阅读分享功能,让用户可以通过好友分享发现更多的优质信息,从而减少阅读的压力,之后,Google Reader还推出了“共享备注”和“评论”功能,进一步强化了Google Reader的社交功能,随着Google Reader的跟随(follow)、喜欢(like) 等功能的发布,Google Reader已经具备了一个社交网站所需要的所有功能,2010年,Google Reader实现了“热门条目”和“神奇排序”功能,让Google Reader从一个RSS阅读器工具彻底转变成为一个社会化媒体发现和共享平台,此时的Google Reader达到了历史的巅峰。
Google Reader的好日子也终于到头了,2011年10月底,Google宣布要整合Google Reader和Google+,最终用户看到的却是,Google Reader的全部社交功能都被删除了,而分享功能则修改的更奇怪了,Google Reader用户分享完成后,别人想要看分享必须要访问Google+才能看到,而且看到的还是摘要分享,对于用户来说,又回到了几年前的起点。自从分享功能有了这种“新特色”之后,我就再也没有使用Google Reader分享过一篇文章,可以说,这次Google Reader的改版,将Google Reader几乎所有的优点都删除了,所有的缺点都被放大了,最终导致Google Reader的用户阅读体验大幅下降。
于是,大量Google Reader老用户对改版表示不满,他们为此参与了一项“万人签名拯救Google Reader”的请愿活动,要求Google换回以前的Google Reader版本。许多失望的Google Reader用户纷纷以#OccupyGoogleReader或#OccupyReader这样的标签发帖,在Twitter上面发泄他们的愤怒。部分华盛顿居民则在纽约大道1101号谷歌华盛顿办公室门前举起“拯救Google Reader”的牌子进行抗议。
Google Reader的商业化探索
一个产品的生存基础就是要有一个好的商业模式,商业公司需要通过一定途径或方式从产品上赚钱,缺少商业模式的产品都是非常危险的,一个产品如果不能产生可持续盈利收入,那就无法对商业公司产生价值。Google Reader是一个非常消耗资源的产品,海量的RSS抓取需要大量的资源和带宽,而Google Reader开放了API供Reeder等第三方应用调用,这就耗费了额外的更多资源,而Google却并没有向这些第三方应用收费,也没有对用户收费,Google是一家网络广告公司,他对于产品的商业化模式倾向于广告展示。
Google早在2006年就开始探索RSS的商业模式,最早的产品是Google AdSense for Feeds for beta,那时候搞RSS广告的还有Feedburner Ad Networks,Google可能为了更好地掌握RSS广告的技术,于2007年收购了Feedburner,2007年底,FeedBurner开始集成Google AdSense广告,2008年,Google发布AdSense for Feeds,让所有支持RSS的AdSense用户都可以使用RSS广告。
不出意料,Google AdSense for Feeds这个RSS广告产品维持了四年时间,终于在2012年底宣布此服务关门大吉。Google在RSS商业模式的探索努力最终以失败而告终,或许从那时起,Google就已经开始考虑关闭Google Reader了。
Google Reader的灭亡
时光进入了2013年,Google Reader的末日也终于来临,Google终于宣布将在2013年7月1日关闭Google Reader,Google官方博客对于这一决定给出了两个冠冕堂皇的理由:首先,Google Reader使用率持续下降。其次,“作为一个正悉心聚焦于更少产品的公司,我们认为专注将给用户带来更好的体验。”不过,稍稍进行一些分析,就会发现Google的说法根本站不住脚。
通过Google关键字工具可以跟踪在Google中搜索这些产品的次数,以此可以类推各个产品的热门程度。根据Google提供的数据,包括Google相关的全球每月搜索量的大小,我总结了下面这张表单,列出了Google搜索最多的产品,总的来说这是Google服务的热门程度对比。
关键字 | 全球每月搜索量 |
youtube | 1,380,000,000 |
755,000,000 | |
gmail | 277,000,000 |
google earth | 83,100,000 |
google maps | 83,100,000 |
chrome | 68,000,000 |
blogspot | 68,000,000 |
google translate | 55,600,000 |
google chrome | 37,200,000 |
picasa | 9,140,000 |
google docs | 7,480,000 |
google analytics | 5,000,000 |
google calendar | 3,350,000 |
google apps | 3,350,000 |
google voice | 3,350,000 |
google plus | 2,740,000 |
google talk | 2,740,000 |
google books | 2,240,000 |
google adwords | 1,830,000 |
google sketchup | 1,220,000 |
google adsense | 1,220,000 |
google reader | 1,000,000 |
google trends | 368,000 |
google currents | 60,500 |
Google的产品的确很多,从商业模式上看,可以分为盈利类、间接盈利类、不盈利类,Adwords和Adsense属于直接盈利的广告产品,Google搜索则提供了主要的广告展示,间接进行了盈利,Google的其他产品,例如Google工具栏等,主要功能是在IE和Firefox上将默认搜索修改为Google,增加Google搜索的流量,Chrome默认的搜索就是Google,所以一直没有Chrome版本的Google工具栏,一些产品虽然用处不大,用户也不多,但都或多或少地增加了Google的搜索流量,间接为Google的广告收入做出了贡献。
但是,RSS阅读器就不同了,这种产品运维困难,不具备可持续发展的条件,RSS阅读器无法依靠展示广告盈利,其用户性质决定了没人会点广告,同时,维持一个RSS阅读器正常运行需要耗费大量成本,大量的抓取服务器和带宽都是非常耗费资源的,要保证及时抓取海量RSS的更新不是件简单的事情,同时,针对用户的个性化分析也非常复杂,需要大量计算,一方面运营需要付出高额成本,一方面产品又缺少可持续商业模式。Google是全球最大的广告公司,广告是其盈利的主要模式,而Google Reader的一大特色就是在不打开网页的情况下阅读内容,从而过滤了广告,Google Reader的用户越多,Google的广告收入就越少,因此,Google缺少继续支持Google Reader的理由。现在网民举行各种请愿活动希望Google放弃关闭Google Reader,无异于痴人说梦。
一个伟大的产品最终还是死掉了,杀死她的不是战场上的敌人,而是她身后的亲人。
评论《Google Reader为什么会关闭》的内容...
相关文章:
微博:新浪微博 - 腾讯微博
QQ群:186784064
月光博客投稿信箱:williamlong.info(at)gmail.com
Created by William Long www.williamlong.info
别了,Google Reader
别了,Google Reader:
Google喜欢折腾各种新创意,但是砍起产品来也是大刀阔斧。这不,春季大扫除行动又开始了。其中最“著名”的产品是已有8年历史的Google Reader。
冰冻三尺非一日之寒。Google关闭Google Reader只是系列动作的最后一个步骤。在有了Google+之后,Google Reader就已经被剥离了社会化的内核,并且几乎没有留下什么员工对它进行维护。Google推出的最后一个以RSS为核心的产品是AdSense for Feeds,一个对RSS订阅源进行货币化的广告产品。想对最后的忠实用户,具有浏览洁癖的极客播放广告?这个想法很不好。2012年12月3日,AdSense for Feeds关门大吉。现在Google就只剩下FeedBurner这唯一的一颗RSS种子了。
别了,Google Reader。对于视之为吸收信息的海绵的极客来说,这多多少少有点依依不舍,但对于一般的互联网用户来说,也许仿佛它就未曾来过。RSS几乎从来就没有赢得过普通互联网用户的青睐,当然,对信息获取如饥似渴的极客而言,RSS简直就是他们的乐园。看到喜欢的网站,找到RSS的链接,然后点击并订阅,正如它的名字Really Simple Syndication一样,同步真的非常简单,不是吗?不是的,要想把它解释给其他人听有点困难。为了尽量让解释通俗易懂,有人曾经这样打过比方:“其实就是把内容变成电视台,你订了哪个台就收看哪个台。”这种努力失败了,作为技术,RSS太宅了,对一般的消费者没有吸引力。
对于一般人而言,微博这个RSS阅读器更容易接受。三人行必有我师,但凡知识渊博者、乐意分享者,我加关注成为其粉丝,站在巨人的肩膀上岂不看得更高更远?
与微博相比,RSS阅读器稍欠亲和。而与Flipboard之流相比,RSS阅读器又略逊风骚。是,对于极客来说,信息就够迷人的了,而且只有信息才是迷人的。但对于普罗大众来说,形式很重要,有时候甚至比内涵还重要。冷冰冰地浏览信息流不够性感。
实际上,很多流行的互联网产品,往往是极客先使用,然后再推广到普通互联网用户那里才流行起来的,比如说Instagram。RSS之所以流行不起来,不得不说是启蒙的失败。
轻轻地,你走了,就好像从没来过。
但我会带走那片云彩。
除非注明,本站文章均为原创或编译,转载请注明: 文章来自 36氪Gson使用
gson:谷歌提供的JSON的解决方案。它的站点是http://code.google.com/p/google-gson/。本人用过org.json和的JSON - lib中提供的解决方案。
先说下org.json,它属于轻量级的JSON的。它能够将Object或者ArrayList的转换为JSONObject的和JsonArrayList。但是在反转换的JSON字符串时却只能够提供字符串的结果。所以比较适合 开发者后期处理。
至于的JSON - lib的在反转方面做得比前者强了许多。它通过JSONObject.fromObject和JSONObject.toBean可以将Bean、ArrayList、HashMap中与JSONObject的互相转换。但是遇到嵌套问题
如一个Bean1->HashMap-> Bean2。当它对该对象反转换时将出现Bean2为JSONObject的对象的情况.
现在讲到gson了.它通过reflection来识别对象.见下面例子:
定义<Bean>
package org.gson.bean; import java.util.Date; import com.google.gson.annotations.Expose; /** * 普通的UserBean */ public class UserBean { @Expose //并不是java标准的注解,而是谷歌GSON的注解,表示它所注解的字段不支持序列化。 private String id; @Expose private String name; private Date birthday; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } @Override public String toString() { return "UserBean [birthday=" + birthday + ", id=" + id + ", name=" + name + "]"; } }--------------------------------------------------------------------------------
package org.gson.bean; import java.util.List; import java.util.Map; /** * 包含Arrylist和HashMap,里面保持UserBean */ public class GroupBean { private String id; private Map---------------------------------------------------------------------------------------------- FilterAnnotationTestuserMap; private List userList; public String getId() { return id; } public void setId(String id) { this.id = id; } public Map getUserMap() { return userMap; } public void setUserMap(Map userMap) { this.userMap = userMap; } public List getUserList() { return userList; } public void setUserList(List userList) { this.userList = userList; } @Override public String toString() { return "GroupBean [id=" + id + ", userList=" + userList + ", userMap=" + userMap + "]"; } }
package org.gson.main; import org.gson.bean.UserBean; import com.google.gson.Gson; import com.google.gson.GsonBuilder; /** * 通過註釋過濾轉換對象 */ public class FilterAnnotationTest { /** * @param args */ public static void main(String[] args) { UserBean user = new UserBean(); user.setId("1001"); user.setName("张三"); /** * 设置注释过滤功能 * Gson gson = new GsonBuilder() * .registerTypeAdapter(Id.class, new IdTypeAdapter()) * .serializeNulls() * .setDateFormat(DateFormat.LONG) * .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE) * .setPrettyPrinting() * .setVersion(1.0) * .create(); */ GsonBuilder builder = new GsonBuilder(); // 不转换没有 @Expose 注解的字段 builder.excludeFieldsWithoutExposeAnnotation(); Gson gson = builder.create(); // 将JavaBean字符串转换为 JSON String sUser = gson.toJson(user); System.out.println(sUser); // {"id":1001,"name":"张三"} // 将JSON字符串转换为 JavaBean UserBean user2 = gson.fromJson(sUser, UserBean.class); System.out.println(user2.getId() + ", " + user2.getName()); // 1001, 张三 } }-------------------------------------------------------------------------------------------
package org.gson.main; import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; import org.gson.bean.UserBean; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; /** * 模板反射對象Bean * @author yansheng */ public class TemplateTest { /** * @param args */ public static void main(String[] args) { List<UserBean> testBeanList = new ArrayList<UserBean>(); UserBean testBean = new UserBean(); testBean.setId("1"); testBean.setName("name"); testBeanList.add(testBean); Gson gson = new Gson(); Type type = new TypeToken<List<UserBean>>(){}.getType(); String beanListToJson = gson.toJson(testBeanList, type); System.out.println(beanListToJson); // prints [{"id":"id","name":"name"}] List<UserBean> testBeanListFromJson = gson.fromJson(beanListToJson, type); System.out.println(testBeanListFromJson); // prints [TestBean@1ea5671[id=id,name=name,birthday=<null>]] } }----------------------------------------------------------------------------
package org.gson.main; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; /** * 簡單的集合使用 * @author yansheng */ public class SimpleCollectionTest { /** * @param args */ public static void main(String[] args) { Gson gson = new Gson(); // 将ArrayList字符串转换为 JSON List<String> testList = new ArrayList<String>(); testList.add("first"); testList.add("second"); String listToJson = gson.toJson(testList); System.out.println(listToJson); // prints ["first","second"] // 将JSON字符串转换为 ArrayList List<String> testList2 = (List<String>) gson.fromJson(listToJson, new TypeToken<List<String>>(){}.getType()); System.out.println(testList2); // 将HashMap字符串转换为 JSON Map<String, String> testMap = new HashMap<String, String>(); testMap.put("id", "id.first"); testMap.put("name", "name.second"); String mapToJson = gson.toJson(testMap); System.out.println(mapToJson); // prints {"id":"id.first","name":"name.second"} // 将JSON字符串转换为 HashMap Map<String, String> userMap2 = (Map<String, String>) gson.fromJson(mapToJson, new TypeToken<Map<String, String>>(){}.getType()); System.out.println(userMap2.get("id")); } }-------------------------------------------------------------------------
package org.gson.main; import java.lang.reflect.Type; import java.text.DateFormat; import java.util.ArrayList; import java.util.List; import org.gson.bean.UserBean; import com.google.gson.Gson; import com.google.gson.GsonBuilder; /** * * date測試類 */ public class DateTest { /** * 序列化方法 * * @param bean * @param type * @return */ public static String bean2json(Object bean, Type type) { Gson gson = new GsonBuilder() .registerTypeAdapter(java.util.Date.class, new UtilDateSerializer()) .setDateFormat(DateFormat.LONG).create(); return gson.toJson(bean); } /** * 反序列化方法 * * @param json * @param type * @return */ public static <T> T json2bean(String json, Type type) { Gson gson = new GsonBuilder() .registerTypeAdapter(java.util.Date.class, new UtilDateDeserializer()) .setDateFormat(DateFormat.LONG).create(); return gson.fromJson(json, type); } public static void main(String[] args) { // TODO Auto-generated method stub List<UserBean> testBeanList = new ArrayList<UserBean>(); UserBean testBean = new UserBean(); testBean.setId("id"); testBean.setName("name"); testBean.setBirthday(new java.util.Date()); testBeanList.add(testBean); java.lang.reflect.Type type = new com.google.gson.reflect.TypeToken<List<UserBean>>() { }.getType(); String beanListToJson = bean2json(testBeanList, type); System.out.println("beanListToJson:" + beanListToJson); // prints [{"id":"id","name":"name","birthday":1256531559390}] List<UserBean> testBeanListFromJson = json2bean(beanListToJson, type); System.out.println(testBeanListFromJson); // prints [TestBean@77a7f9[id=id,name=name,birthday=Mon Oct 26 12:39:05 // CST 2009]] } }--------------------------------------------------------------------
package org.gson.main; import java.lang.reflect.Type; import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonDeserializer; import com.google.gson.JsonElement; import com.google.gson.JsonParseException; /** * 反串行Data */ public class UtilDateDeserializer implements JsonDeserializer<java.util.Date> { @Override public java.util.Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { return new java.util.Date(json.getAsJsonPrimitive().getAsLong()); } }-----------------------------------------------------------
package org.gson.main; import java.lang.reflect.Type; import java.util.Date; import com.google.gson.JsonElement; import com.google.gson.JsonPrimitive; import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; /** * 串行Data */ public class UtilDateSerializer implements JsonSerializer<java.util.Date> { @Override public JsonElement serialize(Date src, Type typeOfSrc, JsonSerializationContext context) { // TODO Auto-generated method stub return new JsonPrimitive(src.getTime()); } }
package org.gson.main; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.gson.bean.GroupBean; import org.gson.bean.UserBean; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; /** * 嵌套使用對象Bean * @author yansheng */ public class NestedTest { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub UserBean user1 = new UserBean(); user1.setId("1001"); user1.setName("张三"); UserBean user2 = new UserBean(); user2.setId("1002"); user2.setName("李四"); MapuserMap = new HashMap (); userMap.put("user1", user1); userMap.put("user2", user2); List userList = new ArrayList (); userList.add(user1); userList.add(user2); GroupBean groupBean = new GroupBean(); groupBean.setId("1"); groupBean.setUserMap(userMap); groupBean.setUserList(userList); Gson gson = new Gson(); String sGroupBean = gson.toJson(groupBean, new TypeToken () { }.getType()); System.out.println(sGroupBean); //{"id":"1","userMap":{"user2":{"id":"1002","name":"李四"},"user1":{"id":"1001","name":"张三"}},"userList":[{"id":"1001","name":"张三"},{"id":"1002","name":"李四"}]} // 将JSON字符串转换为 HashMap GroupBean groupBean2 = (GroupBean) gson.fromJson(sGroupBean, new TypeToken (){}.getType()); System.out.println(groupBean2); // 张三 } }
GSONTest工程文件 BOX
GSON教程PDF BOX
35个你也许不知道的Google开源项目
Google是支持开源运动的最大公司之一,它们现在总共发布有超过500个的开源项目(大部分都是利用它们的API来完成),本文将列举一些有趣的开源项目,其中很可能有不少你不知道的哦。
文本文件处理:
Google CRUSH (Custom Reporting Utilities for SHell)
CRUSH是为命令行或shell scripts处理特定文字数据而制作的一系列工具,这里有指南。
C++库和源代码:
Google Breakpad
一个开源的多平台崩溃报告系统。
Google GFlags
Gflags是一个命令行标记的处理库,它可以替代“getopt()”,其内置对C++的支持比如string。指南在此。
Google Glog
Glog库可执行应用级的日志,提供基于C++式的日志API,可用于Linux、BSD和Windows。指南见此。
Google PerfTools
这个工具可让开发创建更强大的应用程序,特别是那些用C++模版开发的多线程应用程序,包括TCMalloc, heap-checker, heap-profiler 和cpu-profiler。指南见此还有这里。
Google Sparse Hash
非常节省内存的hash-map。指南见此。
Omaha – Google Update
Omaha,也就是Google Update,它可以保证你的软件随时升级到最新版本,目前很多Windows下的Google软件都是用Omaha升级的,包括Google Chrome和Google Earth,当然你也可以用于自己的应用程序。指南看这里还有这里。
Protocol Buffers
Protocol Buffers是一种可扩展编码序列数据的方式,Google在几乎所有内部RPC协议和文件格式都使用了Protocol Buffers。指南见此。它可以用于很多语言而且被一些IDE所支持,比如NetBeans。
互联网:
Google Code Pretiffy
这是一个Javascript模块和CSS文件,它可以让HTML页面里的部分源码高亮显示,支持C/C++, Java, Python, Ruby, PHP, VisualBasic, AWK, Bash, SQL, HTML, XML, CSS, JavaScript, Makefiles和部分Perl,不支持Smalltalk和所有的CAML。例子见此。
SpriteMe – easy “CSS spirtes”
SpriteMe使你可以更轻松的创造CSS Sprites(俗称雪碧……)就是把网站要用到的图片都堆在一张图片里,用CSS控制调用哪个区域。它有一个自己的官网在这里。
Redacisaurus
Reducisaurus是一个压缩CSS和JS文件的网络服务,基于YUI压缩算法,运行于App Engine。
JaikuEngine
JaikuEngine是一个运行于App Engine的微博系统,由jaiku.com运营。要查看移动客户端的源码可以看这里,这里还有介绍。
Selector Shell
Selector Shell是一个基于浏览器的测试工具,它可以让你看到CSS在不同浏览器里的样式,用Javascript写的,你可以在这里测试。
Google Feed Server
Google Feed Server是一个开源Atom发布协议服务,基于Apache Abdera框架,允许开发者快速为当前数据源(比如数据库)配置feed。指南见这里和这里。
Melange, the Spice of Creation
这个项目的目标是创建出一个适合开源贡献流程的框架,比如Google Summer of Code TM (GSoC)项目。使用这个框架你就可以用Google App Engine来运行Google Summer of Code项目,和其它类似项目比如Google Highly Open Participation TM Contest和GHOP。指南见此。
NameBench
它可以查找最快的DNS服务器给你的电脑用,在Mac OS X、Windows和UNIX系统下都有命令行也有用户界面可以帮你测试,这是Google工程师用20%自由时间写出来的。
Rat Proxy
一个半自动化的大型被动网络应用安全审查工具,专为精确的探测而优化,文档在此。
TopDraw
Top Draw是一个图形生成程序,使用简单的文字脚本,基于JavaScript编程语言,Top Draw可以创造出非常复杂和有趣的图形。支持Mac OS 10.5以上系统,使用XCode开发。
etherpad
开源的EtherPad,这是一个基于网络的实时合作文档编辑器,这个项目主要是为了演示代码而开发,帮助那些想在自己服务器部署Etherpad的人使用,这里有如何安装的指南。EtherPad使用JavaScript、Java和Comet服务器来建造实时协作服务。
Chromium
Chromium是开源版的Chrome浏览器,Chromium的目标是建立一个新一代的强大网络应用程序,它与Chrome有很多不同之处。这里有指导如何在Linux上编译Chromium。
V8 Google’s open source JavaScript engine
V8是Google的开源JavaScript引擎,用C++写成,用于Chrome浏览器之上。V8使用ECMAScript的ECMA-262第三版可运行于Windows XP、Vista、Mac OS 10.5和使用IA-32或ARM处理器的Linux。V8可独立运行也可嵌入到任何C++程序里使用,这里有指南。
Chromium OS
Chromium OS是开源版的Chrome OS操作系统,提供快速、简单而安全的网络体验,源码在此。
Android
Android是第一个免费、开源而且可完全自定义的移动平台,提供完整的堆栈:一个操作系统、中间件和重要的一用应用,它包含丰富的API可以让第三方开发者开发出强大的应用程序。
MySQL工具:
Google MySQL Tools
各种管理、维护和改进MySQL数据库性能的工具,由Google编写,包括:
mypgrep.py:一个类似pgrep的工具来管理MySQL连接
compact_innodb.py:可导出和重载所有表格的密集型innodb数据文件
Google mMAIM
mMAIM的目标是对MySQL的监控和分析更简单,且可以和任何环境整合使用。它可显示主/从同步状态,一些性能状态,可以返回大量“show”命令的状态等等。
其它:
Stressful Application Test (stressapptest)
Stressful Application Test试图让来自处理器和I/O到内存的数据尽量随机化,以创造出模拟现实的环境来测试现在的硬件设备是否稳定,Google就在使用它,现在是Apache 2.0许可,这里有介绍、安装向导和指南。
Pop and IMAP Troubleshooter
它用于诊断并解决客户端到邮件服务器的连接问题。
OpenDuckBill
Openduckbill是一个Linux下简单的命令行备份工具,可用于监视文件/目录在有变化后是否标记为备份,并传输这些变化到本地备份目录、远程NFS导出分卷或是用rsync命令导出到远程SSH服务器。见安装向导。
ZXing
ZXing(发音类似Zebra crossing)是Java的开源多格式1D/2D条码图像处理库,目的是使用内置在手机上的摄像头拍照并对条码进行解码,而不必与服务器通讯,它被用于Android系统。这里有向导和支持的设备列表。
Tesseract OCR Engine
Tesseract OCR引擎是1995年UNLV Accuracy测试的前三名之一,在1995和2006年之间它的进展不大,但依然是当前精度最高的OCR引擎。这个源码可读取二进制、灰阶或彩色图片并输出文字,内置一个TIFF阅读器可读取非压缩的TIFF文件,增加libtiff后也可读取压缩图片。指南和问答。
Neatx – Open Source NX server
Neatx是一个开源NX服务,类似NoMachine公司商业的NX服务。NX协议比VNX更强大,它们的区别主要在:
NX是X11客户端所以不会发送位图
NX可兼容X、VNC和Windows版的Remote Desktop
NX可缓存数据
NX安装简单
另外一个可选的项目可以看看Google的FreeNx。
PSVM
它是这个文件的代码,这是一个SVM的“支持所有核心”的版本,可多机并行运行,实例见此。
GO
Google开发的新编程语言,谷奥有报道。
The Google Collections Library for Java
这是一系列与Java 5以及更高版本有关的库,Google花钱给买过来了。
Google styleguide
每个主流的开源项目都有它自己的向导形式,比如一系列的演示代码。如果这些代码都按照“Style”的形式来演示,会更友好。
Json描述
今天突然被问到Json这种表述语言,我竟然一时语塞,只知道“键值对”这种最基本的描述。可是查看维基百科才发现这样的描述也是不大正确的。正确的说法应该是“名值对”,Json的格式不像Hash是“键”,Key的属性是不能重复,当然作为Json的“名”,一定意义上也是不能重复的。虽然我看Json的东西也不多,但是认识到我对Json认识的不完全,我回来还是补习了下Json的东西的。这里是JSON的官方网站,当时做项目就是从这里找到的google-gson,Google开发的一个非常棒的库,这个库能够将Java对象转成JSON格式,也很容易将JSON格式变成Java对象。虽然JSON官网非常简单,包含的内容却非常的多,从JSON的介绍到JSON相关的项目,到RFC文档。当然JSON本身就是一个简单的轻量级的文本格式。当时项目的时候就是将写好的XML格式变成JSON格式的,仅仅是因为JSON轻量级的。
写到这里我突然想起来我在阮一峰博客上面看到的一篇文章数据类型和JSON格式,这里引用他的一句话
结构上看,所有的数据(data)最终都可以分解成三种类型:标量(scalar),序列(sequence),映射(mapping)。数据构成的最小单位原来如此简单!难怪在编程语言中,只要有了数组(array)和对象(object)就能够储存一切数据了。阮一峰总结的真是太深刻了,上个学期刚刚学习了Perl,那也是一门语法非常简单,却功能无比强大的语言。Perl的数组和哈希几乎构成了Perl的所有类型,那些更加复杂的数据类型都是在数组和哈希的基础上面构建起来的。阮一峰的一席话也同样让我恍然大悟,JSON是如此简单,却保留着数组和哈希的一切特性。
这番回顾加深了我对JSON的理解,也以此为以后做备忘。
Gson简单使用
Google开源的一个将Java对象转成Json格式的项目Gson项目Google Code:http://code.google.com/p/google-gson
API文档:http://google-gson.googlecode.com/svn/trunk/gson/docs/javadocs/index.html
用户指南:http://sites.google.com/site/gson/gson-user-guide
以下项目导入附加包
public class student { private String name; private String sex; private int year; public student(){ this.name = "einverne"; this.sex = "m"; this.year = 12; } public student(String n,String s,int y){ name = n; sex = s; year = y; } } import com.google.gson.Gson; public class testmain { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub student student = new student(); Gson gson = new Gson(); System.out.println(gson.toJson(student)); student student2 = new student("wewew","we",12); System.out.println(gson.toJson(student2)); int[] ints = {1,2,3,4,5}; String[] strings = {"abc","def","ghi"}; System.out.println(gson.toJson(ints)); System.out.println(gson.toJson(strings)); } }
找可用IP的方法
找可用IP的方法:
一、可以使用nslookup命令查找,输入命令nslookup -vc 域名 8.8.4.4
二、打开http://just-ping.com/网站输入域名点击ping即可查到IP
三、打开 自 由 门 或逍遥游 等其连接到服务器后点击设置 域名解析 输入域名解析即可查到IP
(查到的IP逐个在本机 ping IP 找出可用IP)
http://www.linkwan.com/gb/broadmeter/article/trace-help.htm
http://whois.arin.net/
这个也可以
最简单的就是加上-vc 参数, nslookup -vc http://www.google.com
nslookup -vc xxx1.appspot.com
Google取消敏感关键字提示功能(转)
据TechCrunch报道,Google悄然取消了早先推出的针对中国的敏感关键字提示服务,并没有声张,也没有正式声明来解释为何删除这个功能。敏感关键字提示服务是去年Google针对中国大陆用户搜索体验不佳的问题而推出的一项功能,当用户在搜索某些词的时候,谷歌搜索框会提示用户不经意间触发的敏感词,并告知该字会导致网页中断连接。
根据GreatFire网站的检测,该服务大约是在2012年12月5号至12月8号期间取消的,相关帮助文档也被同时删除,但并未得到广泛注意,Google官方也没有像当初启动时那样发表任何官方声明和解释。
Google一直被描述成为一个“不作恶”公司的典型,在去年5月底,当Google推出针对中国用户的敏感关键字警告信息后,这种声望达到了高潮。中国网民发现,输入一些所谓敏感的关键字,Google会用黄色信息突出提示,该搜索会导致用户中断连接。这是Google针对中国网络审查的一步大胆的尝试。
在这项新功能发布的24小时后,该功能所使用的JavaScript文件即被屏蔽阻断了关键字数据,使得这个功能在中国失效了,Google立刻做出反应,修改了文件的URL地址,但稍后该地址又被屏蔽,到了月底的时候,这个猫捉老鼠的游戏终于结束,Google使用了嵌入式的方法将这个功能加入其首页,这使得技术上已经无法单独屏蔽这个功能,除非将Google整体屏蔽。
不过,这是Google的一次胜利吗?不幸的是,这不是,Google最终还是在12月份关闭了这个功能,该功能相关的帮助文件也被删除,就好像这个功能从来没有出现过一样。当我们现在点击这个页面的时候,看到的是“无法找到您检索的信息”,而我们从网页快照中,依然可以看到如下图的信息。
Google为什么要关闭这个功能呢?有一种说法是,尽管这个功能是有用的,但在中国版Google首页嵌入这个功能,让这个系统更难以维护,系统越复杂,就越难以进行更新维护。还有一种说法是,Google可能和中国政府达成了一项协议,实行了更严格的自我审查。
之前中国政府曾在11月9号对Google实行了24小时的完全封锁,但24小时之后就移除了,当时我们就在推测,这是否在进行“完全屏蔽Google”的测试,但这显然给了Google相当大的压力,此外11月对Google Gmail服务的限制也明显增多,最后,Google可能觉得提供受一个较慢且受限但稳定的Gmail服务也比被完全没有要好。
这一挫折让Google走到了她的对立面,这也表明Google未必能赢得网络自由战士的称号,即使如此,Google做的也比其他公司要好的多(例如微软、苹果和雅虎),Gmail依旧是中国用户最安全可靠的邮件服务(特别是对于知识分子来说),她支持HTTPS和两步验证,对于可疑的攻击行为会发出警告,即使面对强大对手,Google被迫低头,我们也对此表示赞赏。
关键字提示功能事件回顾:
5月31日:Google在中国内地引入关键字搜索提示功能,并发表博客文章、YouTube视频进行解释和帮助。
5月31日:防火墙通过屏蔽包含此功能的JS文件和过滤关键字数据而第一时间封杀了这一功能。
6月2日:Google改变了JS文件路径,提醒功能恢复。
6月2-18日:防火墙再次屏蔽了新的路径。
6月底之前:Google在首页使用了新的反审查功能,使得屏蔽几乎不可能。
11月6日:Gmail开始遭到大面积屏蔽。
11月9日:Google.com、Google.com.hk在国内全面被封。
11月10日:Google又迅速解禁。
12月5-8日:Google取消了首页的反审查功能,并删除了关键字提醒功能和相关帮助文档。
英文原文:https://en.greatfire.org/blog/2013/jan/google-bows-down-chinese-government-censorship
翻译来自:月光博客
博客中相关文章:纪念2012年六一
更多内容:GreatFire
Ingress文章收集
2.英文文档for +Ingress new player (Google Docs)
3.+Cherysun Zhang 博客中整理的Ingress Scanner技术
【1初步介绍】
【2基本训练】
【3势力选择】
【4游戏术语】
谷歌Google.cn中国历程2000-2010
中国google的退出事件,最近整理了一下google自2000年进入中国后的一些事件,都是通过网络整理出来的,有些摘自新浪网2000年9月12日:谷歌宣布在Google.com增加简体及繁体两种中文版本,开始为全球中文用户提供搜索服务
2002年8月31日:谷歌在中国大陆首次遭到封锁
2004年9月10日:Google.com推出简体中文版谷歌新闻
2005年7月19日:李开复加盟谷歌,正式出任谷歌中国区总裁,同时谷歌宣布将在中国设立研发中心。
2006年1月:简体中文版谷歌新闻改名为“资讯”
2006年1月26日:谷歌启用“Google.cn”。Google.cn主要提供经过政府审查的信息,这在不支持信息过滤的谷歌总部引起强烈争论,但李开复用各种方式说服google.
2006年3月2日:腾讯SOSO正式推出,采用谷歌的搜索技术合作提供网页搜索服务。到2009年9月,腾讯表示SOSO正在采用自有搜索引擎技术进行试运营,但与谷歌的合作仍会继续
2006年4月12日:谷歌全球CEO施密特在北京宣布Google的中文名字为“谷歌”。谷歌正式进入中国。施密特亲自来华,将刻有中文“谷歌”的印章交给大中华区负责人李开复和周韶宁。谷歌以最中国的形式,来表态对中国本土化的决心
2006年6月7日:谷歌国际版在中国大陆再次受到封锁,但谷歌中国仍然正常
2006年6月24日:Google.cn和MSN.com.cn均被域名挟持到“买麦网”
2006年9月4日:谷歌正式启用位于北京市中关村清华科技园里面总建筑面积1.4万平米的科建大厦,作为谷歌中国的总部
2006年12月08日:亚太区市场总监王怀南与大中华区联合总裁周韶宁几乎同一时间离职。这是谷歌少数几次来自内部的重大挫折,外界并不了解二人辞职的原因,但“谷歌退出中国”的传言迅速散播开来
2007年1月4日:得到中国最大电信运营商中移动认可的谷歌,宣布与之合作推出移动搜索,进入比PC更大的移动终端市场。谷歌宣称,此次合作是由施密特与王建宙“巧遇”达成的
2007年1月5日:谷歌与迅雷达成合作,希望依靠迅雷带来流量
2007年3月起:中国大陆用户在使用未修改cookies的简体中文版浏览器里输入Google.com会被自动转向到Google.cn
2007年3月上旬:谷歌中国在Google.cn推出谷歌网站导航产品
2007年3月16日:谷歌中国在Google.cn推出谷歌热榜产品
2007年4月4日:谷歌中国推出谷歌拼音输入法,但随后被搜狐指责抄袭
2007年5月:谷歌收购265.com,并和网吧进行全方位的推广合作,以积极姿态接触草根用户
2007年5月20日:谷歌中国在Google.cn上发布新产品谷歌生活搜索
2007年6月11日:谷歌与新浪在搜索、资讯、广告等方面达成合作
2007年8月20日:谷歌中国与天涯合作推出“天涯问答”和“天涯来吧”,这是谷歌中国第一次为合作伙伴提供技术支持的产品问世
2007年9月19日:Google.cn取得由信息产业部颁发的新ICP牌照。通过与本土公司合资的方式,Google.cn曲线绕过在中国开展业务最大的法律障碍,这让其后在中小型互联网整顿中有惊无险。此时的谷歌初步完成对中国市场的熟悉,此后的一年多也是谷歌在中国最幸福的时光
2007年10月18日:Google.com、Windows Live Search和雅虎搜索引擎再次遭到域名挟持,本次是被挟持到百度
2007年10月30日:谷歌中国正式宣布Google.cn正式启用简短域名:g.cn。而此域名原由上网导航网站265.com总裁蔡文胜所有。当时有传闻指谷歌中国将会收购265.com,而当中原因就是要得到此域名
2007年11月1日:Google.cn被加入网页快照功能,但此功能并不能充分使用
2008年1月7日:刘允出任谷歌全球副总裁,负责大中华区销售和渠道业务。作为有中国大陆背景的经理人,刘具有丰富外资电信行业背景。但相比李开复的经历,人们显然很难看懂谷歌总部为何从一家韩国公司挖来刘允。但恰恰是这个出任意料的选择,让刘日后成为影响谷歌中国命运的关键人物之一
2008年1月30日:推出“春运交通图”。在遭受暴风雪袭击的“春运”中,此举被网民誉为雪中送炭,更被视为谷歌贴近本土市场的表现
2008年3月26日:谷歌向康盛创想投资100万美元
2008年4月24日:由纽约和上海的谷歌工程师共同合作开发的谷歌财经中国版正式发布,同时宣布推出重新设计的谷歌财经主页
2008年5月8日:谷歌中国与金山软件公司发布金山词霸的免费互联网版本《谷歌金山词霸合作版》
2008年5月23日:谷歌宣布已透过关联公司Google爱尔兰购入265.com的域名,但双方都没有透露交易的具体金额。对于有消息指谷歌开价2000万美元用于收购265的传闻,遭双方否认
2008年8月5日:谷歌中国与巨鲸音乐网联合宣布,在Google.cn推出谷歌音乐产品,所有可供免费下载的歌曲均得到正版音乐授权。但有消息称,谷歌音乐并未获得滚石唱片的授权就擅自大量提供该唱片公司旗下歌手的音乐文件。亦有人发现其实谷歌音乐提供的音乐文件内嵌了版权信息,并非真正意义上的免费音乐,下载使用这些文件仍然有版权纠纷的隐忧
2008年8月19日:谷歌推出中国版公交搜索
2008年11月10日:谷歌中国在Google.cn推出中国版iGoogle。中国版iGoogle是以Cookies技术记录用户的个性化定制,且并不能像国际简体版iGoogle那样支持用户帐户登录,故用户在更换电脑后需要重新设置页面
2009年1月:北京市海淀法院审结北京谷歌科技有限公司侵犯商标权及不正当竞争纠纷一案。法院判令“北京谷歌“停止使用企业名称、变更企业名称,并赔偿谷歌中国经济损失及诉讼合理支出共计10万元
2009年6月18日:相关部门及CCTV指责谷歌中国涉黄。尽管没有证据表明此事与眼下的“退出风波”有关,熟悉中国市场的人都知道,此事的爆发对任何一家公司都是一场巨大灾难。李开复随后的辞职,也多被认为受此事影响
2009年6月24日:在中国大陆,除谷歌中国之外的所有中国境外搜索页面均无法访问,包括Google文档在内的多项服务均无法使用,疑似遭遇DNS劫持。25日下午7时左右访问正常
2009年9月4日:谷歌中国宣布,李开复正式辞职创业,谷歌上海工程研究院院长杨文洛接替其研发职责,主管销售的谷歌副总裁刘允接替其运营方面的职责
2009年11月4日:版权局等部委下发通知,要求不得擅自通过网络复制版权作品。此举被认为是针对谷歌数字图书馆业务
2009年12月24日:谷歌与顺网科技进行合作,希望可以通过合作方增加网吧用户
2010年1月13日:谷歌突然在官方博客发布消息,指将重新评估在中国业务的可行性
以上来自http://www.iewb.net/index.php/qg/120.html
2012年9月,Google中国宣布关闭Google音乐(Google 黑板报)(谷奥)
2012年12月,Google宣布关闭中国版购物搜索(谷奥)(Google 黑板报)
Gtalk详解
Google 2012 时代精神
时代精神(德语:Zeitgeist)时作“时代思潮”,德文意为“时间”(zeit,对应英文“tide”和“time”),“精神”(geist,对应英文“ghost”),意指在一个国家或者一个群体内在一定的时代环境中的文化,学术,道德,精神,和政治方面的总趋势以及一个时代的氛围,道德,社会环境方向以及思潮。(Wikipedia)Google每年都会在12月份发布一年中的热门关键字同时发布一个视频来展示一年之中发生过的事情,无论大小,每一个瞬间都会让人感动。Google在他的官方博客上面发布了Zeitgeist 2012网页版,和Google Zeitgeist Andorid App。
以下Google 2012 Zeitgeist详细清单由zhihu阿鲁卡多整理
(0:00 -- 0:06) Here's to the curious
(0:06) Felix Baumgartner由太空跳落地面的镜头 [1]
(0:13) Oscar Pistorius,「刀锋战士」,双腿截肢、参加奥运会。[2]
(0:20) 美国总统竞选辩论第二场 [3]
(0:23) 鸟叔PSY,Summer Stand Live Concert [4]
(0:27) 卡梅隆驾驶单人深潜器“深海挑战者”号成功下潜至世界海洋的最深处
(0:29) 首艘私人飞船SpaceX CRS-1发射到国际空间站成功 [5]
(0:33 -- 0:34)We searched for firsts
(0:35) 欧洲核子研究中心发现疑似希格斯玻色子的相关Paper
(0:36) 第一个被治愈的艾滋病患者Timothy Ray Brown
(0:38)中国首位女航天员刘洋
(0:40 -- 0:41) For relif
(0:41)Google Crisis Response,纽约市和新泽西部分地区的地图
(0:42)飓风“桑迪”席卷美国东岸
(0:44)菲律宾马尼拉被洪水淹没
(0:45)以色列对加沙军事行动
(0:46 -- 0:48)For a choice
(0:49)埃及总统大选
(0:52)弗朗索瓦·奥朗德竞选法国总统成功
(0:53)奥巴马连任美国总统
(0:55)Voices of the Arab spring
(0:58 -- 1:00)For change
(1:00)叙利亚反政府抗议活动
(1:04)希腊民众抗议活动
(1:08)埃及伊斯兰主义者和世俗反对派的抗议活动
(0:10)暴动小猫乐队 [6]
(1:11)Kony 2012活动 [7]
(1:13 -- 1:14)For something special
(1:15 -- 1:19)2012年伦敦奥运会
(1:20 -- 1:22)“奋进号”航天飞机穿行洛杉矶街头
(1:23 -- 1:25)6岁的脑瘫小孩走向他当兵的爸爸 [8]
(1:26 -- 1:28)NASA好奇号成功登陆火星
(1:29 -- 1:30)And for inspiration
(1:31 -- 1:34)美国体操运动员Gabrielle Douglas,2012伦敦奥运会金牌得主
(1:34 -- 1:37)美国游泳运动员Michael Phelps,2012伦敦奥运会金牌得主
(1:38 -- 1:41)西班牙足球队夺得欧洲杯冠军
(1:42 -- 1:45)Google Earth上显示的人类第一次登上月球 ---- 阿波罗号登陆月球的地点
(1:46)已逝美国航天员阿姆斯特朗登陆月球的视频
(1:47 -- 1:48)People also search
(1:49)Sally Ride,已逝美国女航天员,也是美国第一个进入太空的女性航天员。
(1:50)Gore Vidal,已逝美国作家
(1:51)Michael Clarke Duncan,已逝美国黑人演员
(1:51)Andy Griffith,已逝美国演员、电视制作人、格莱美获奖歌手
(1:52)已逝柬埔寨前国王 ---- 西哈努克
(1:53 -- 1:55)Whitney Houston,已逝美国歌手
(1:56)Ray Bradbury,已逝美国作家
(1:56 -- 1:57)Maurice Sendak,已逝美国画家、作家
(1:58)Dick Clark,已逝美国主持人
(1:58)Donna Summer,已逝美国格莱美获奖歌手
(1:58)Mike Wallace,已逝著名美国记者,谈笑风生的主角
(1:59 -- 2:01)Never stop searching
(2:02)马克多香港光剑分部 [9]
(2:02)Berlin 2011 - 2012 Silvester Party [10]
(2:03)Epic Times Square Ball Drop 2012 [11]
(2:04)马克多香港光剑分部 [9]
(2:05)联合国秘书长潘基文在Google+ Hangout上和大家见面 [12]
(2:06)澳大利亚总理Julia Gillard在Google+ Hangout上和大家见面 [13]
(2:07)球王Pelé在Google+ Hangout上和大家见面 [14]
(2:08)昂山素季当选议员 [15]
(2:09)Aki "Hangs" From Kibo [16]
(2:10)来自大堡礁的Google+ Hangout [17]
(2:10)The City of Samba [18]
(2:11)The Hajj [19]
(2:12)切尔西队战胜拜仁慕尼黑队夺得欧洲冠军杯
(2:12)#这里真看不清了,貌似是个什么100米以上的短跑比赛,因为计时是两位的秒数#
(2:12)旧金山巨人队夺得MLB世界大赛冠军 [20]
(2:13)巴西籍残疾人Daniel Dias,参加了2012伦敦奥运会的游泳项目(感谢知友@大空 的补充!)
(2:13)#唉,又一个无名氏。。下次骑自行车,记得给自己打个广告在背上啊!#
(2:14)奥古斯塔国家高尔夫俱乐部首次加入了两名女性高尔夫运动员,Condoleezza Rice和Darla Moore
(2:14)#喂喂,你们玩自行车花样的敢不敢敬业一点啊喂?对,说的就是你!#
(2:15)2012年伦敦奥运会73KG柔道冠军,俄罗斯选手Mansur Isaev
(2:15)NBA球星Jeremy Lin,林书豪
(2:16)Oscar Pistorius,「刀锋战士」在比赛中的场景
(2:17)美国科罗拉多州森林大火
(2:17)美国士兵在执行任务时被塔利班恐怖份子击中 [21]
(2:18)叙利亚反政府武装占领一个战略重地 [22]
(2:19)以色列轰炸哈马斯总部 [23]
(2:19)#大哥,能跑慢点让我看清你的脸吗?#
(2:20)蝙蝠侠的扮演者Christian Bale慰问美国科罗拉多州在枪击事件中受伤的人们 [24]
(2:20)改变巴基斯坦的女孩儿Malala Yousafzai,马拉拉 [25]
(2:21)在Youtube上宣布自杀的澳大利亚小孩 [26]
(2:21)美国WKBT的女主持人在节目中回复说她胖的观众 [27]
(2:21)美国德克萨斯州密苏里城议会中讨论关于性别歧视的法案 [28]
(2:22)Jefferson Bethke [29]
(2:23)残疾人Dergin Tokmak跳舞 [30]
(2:23)#又一个跑步的#
(2:24)世界上唯一一个能摸北极熊和北极熊一起游泳的人 [31]
(2:24)Martyn Ashton - Road Bike Party [32]
(2:25)Taylor Morris,一名在阿富汗战争中受伤被截肢的美国人 [33]
(2:25)The Piano Guys 弹奏One Direction的《What Makes You Beautiful》[34]
(2:25)新西兰军人缅怀在阿富汗阵亡的战友 [35]
(2:25)美国8岁小女孩儿Zoe Thomson弹奏吉他 [36]
(2:26)The Muppets Rock Out in a Google Hangout [37]
(2:26)Justin Bieber, Selena, Ashley Tisdale和一帮人唱《Call Me Maybe》[38]
(2:26)试图跳进冰水里却失败的二逼男青年 [39]
(2:26)2岁的可爱小女孩儿Emma装上3D打印出的假肢 [40]
(2:27)6岁的美丽萝莉装女王 [41]
(2:27)挑战吃肉桂记录的胖子 [42]
(2:27)#这是一坨什么。。。棉花糖?#
(2:28)墨尔本Metro的宣传动画,Dumb Ways to Die [43]
(2:28)Walk Off The Earth 翻唱的《Somebody That I Used to Know》(五个人弹一把吉他) [44]
(2:28)Google Glass [45]
(2:28)想当JB女朋友的脑残粉 [46]
(2:29)2012年11月13日的日全食 [47]
(2:29)Dragon Baby [48]
(2:29)TNT电视台的创意活动 [49]
(2:30)一个从无法正常行走到能正常奔跑的励志男人 [50]
(2:30)看狮子的小萝莉 [51]
(2:30)翻唱歌手Noah Guthrie [52]
(2:30)Minecraft版Gangnam Style [53]
(2:31)Dope Zebra [54]
(2:31)发生在意大利海岸的Costa Concordia号触礁沉没事件 [55]
(2:31)一个犯2的老太太毁了一幅画的故事 [56]
(2:31)Rich Ferguson表演魔术「脑袋搬家」 [57]
(2:31)刺客信条真人版 [58]
(2:31)Ray William Johnson [59]
(2:31)惊恐的喵星人 [60]
(2:31)Gangnam Style的MV [61]
(2:32)Felix Baumgartner由太空跳落地面的镜头 [1]
---------------------------------------
相关信息和链接:
[1] http://www.youtube.com/watch?v=FHtvDA0W34I
[2] http://www.zhihu.com/question/20400121
http://www.zhihu.com/question/20400631/answer/15023723
[3] http://www.youtube.com/watch?v=QEpCrcMF5Ps
[4] http://www.youtube.com/watch?v=rX372ZwXOEM
[5] http://www.youtube.com/watch?v=-Vk3hiV_zXU
[6] http://www.youtube.com/watch?v=grEBLskpDWQ; 2012年2月21日,乐队的5个成员在莫斯科的救世主大教堂的祭坛举行了一场反对普京和俄罗斯正教会的名为“朋克祈祷”("Punk Prayer - Mother of God, Chase Putin Away!")的非法演出。表演被教堂安保人员制止。
[7] http://www.youtube.com/watch?v=Y4MnpzG5Sqc
[8] http://www.youtube.com/watch?v=LqPlBy2-abA
[9] http://www.youtube.com/watch?v=WyiHIsUTpec
[10] http://www.youtube.com/watch?v=i_Z_3OPzq-A
[11] http://www.youtube.com/watch?v=GNkZhX8EuE4
[12] http://www.youtube.com/watch?v=wRhq-qBsfkY
[13] http://www.youtube.com/watch?v=NhUOmfVT0SU
[14] http://www.youtube.com/watch?v=g0bpxZAnsuw
[15] http://www.youtube.com/watch?v=Dr__altXCGc
[16] http://www.youtube.com/watch?v=z22vOjOAQt0
[17] http://www.youtube.com/watch?v=baQ6q6pwIik
[18] http://www.youtube.com/watch?v=XboAeIjcs2E
[19] http://www.youtube.com/watch?v=BOzgcau6y7c
[20] http://www.youtube.com/watch?v=4QemTcq02ek
[21] http://www.youtube.com/watch?v=rLHU-_OhT8g
[22] http://www.youtube.com/watch?v=Zz4nUafXUIo
[23] http://www.youtube.com/watch?v=tzroc0VekTs
[24] http://www.youtube.com/watch?v=zyB9rjIRx4k http://v.youku.com/v_show/id_XNDMxODI4NTI0.html
[25] http://www.youtube.com/watch?v=myDpPEcw8L8
http://article.yeeyan.org/view/247448/330653
[26] http://www.youtube.com/watch?v=UAaEw_EB7Ws http://v.youku.com/v_show/id_XMzkwODI2MTc2.html
[27] http://www.youtube.com/watch?v=rUOpqd0rQSo
[28] http://www.youtube.com/watch?v=OtN9JSxsmzE
[29] http://www.youtube.com/watch?v=I4OK9DmLpCY;
http://v.youku.com/v_show/id_XMzQ4MTU2NjY0.html
22岁的贝思克说希望通过他的新作“性,婚姻和童话”(Sex, Marriage & Fairytales)突出当今毁坏婚姻的最普遍和最棘手的问题,强调耶稣是“每一个婚姻的医治者、救赎者和修复者”。
[30] http://www.youtube.com/watch?v=OasVtpPcjWg http://v.youku.com/v_show/id_XMzU2MDk1MTEy.html
[31] http://www.youtube.com/watch?v=g7rZTZBOrqQ http://v.youku.com/v_show/id_XMzkxMDIzNTQ4.html
[32] http://www.youtube.com/watch?v=7ZmJtYaUTa0 http://v.youku.com/v_show/id_XNDYwMjYyNjEy.html
[33] http://www.youtube.com/user/TaylorMorrisRecovery
[34] http://www.youtube.com/watch?v=0VqTwnAuHws http://v.youku.com/v_show/id_XNDI5ODQ3MjQ0.html
[35] http://www.youtube.com/watch?v=cVSJK1jMxPI
[36] http://www.youtube.com/watch?v=kJmCKY1SR-E http://v.youku.com/v_show/id_XMzQ0MDU0NDUy.html
[37] http://www.youtube.com/watch?v=JrM0qzRA6Vw http://v.youku.com/v_show/id_XMzM1ODYyMzgw.html
[38] http://www.youtube.com/watch?v=AsBsBU3vn6M http://v.youku.com/v_show/id_XMzU0NDQ0MDc2.html
[39] http://www.youtube.com/watch?v=anf2qEjec3U
[40] http://www.youtube.com/watch?v=WoZ2BgPVtA0 http://v.youku.com/v_show/id_XNDM1Nzc5OTcy.html
[41] http://www.youtube.com/watch?v=l9nbhzKaqvA
[42] http://www.youtube.com/watch?v=Cyk7utV_D2I http://v.youku.com/v_show/id_XMzcxOTYwMzM2.html
[43] http://www.youtube.com/watch?v=IJNR2EpS0jw http://v.youku.com/v_show/id_XNDc1OTIxMzI0.html
[44] http://www.youtube.com/watch?v=MsoRSI7ei4E http://v.youku.com/v_show/id_XMzQzMDE5OTY0.html
[45] http://www.bbc.com/future/story/20120703-outsourcing-our-memories
[46] http://www.youtube.com/watch?v=Yh0AhrY9GjA http://v.youku.com/v_show/id_XNDE2OTI1NDMy.html
[47] http://www.zeibiz.com/2012/11/total-solar-eclipse-2012-darkens-australia-delights-spectators/
[48] http://www.youtube.com/watch?v=1oHWvFrpocY http://v.youku.com/v_show/id_XNDcxNDkwMDc2.html
[49] http://www.youtube.com/watch?v=316AzLYfAzw http://v.youku.com/v_show/id_XMzg0MDMyNzYw.html
[50] http://www.youtube.com/watch?v=qX9FSZJu448 http://v.youku.com/v_show/id_XNDAwMDgwOTY0.html
[51] http://www.youtube.com/watch?v=JjK9jYgijnc
[52] http://www.youtube.com/user/only1noah?feature=watch
[53] http://www.youtube.com/watch?v=CldeLN28SOo http://v.youku.com/v_show/id_XNDY1NDEwMTI4.html
[54] http://cheezburger.com/5716539392
[55] http://en.wikipedia.org/wiki/Costa_Concordia_disaster
[56] http://www.theblaze.com/stories/80-year-old-grandma-explains-how-she-ruined-a-rare-jesus-painting-by-restoring-it/
[57] http://www.youtube.com/watch?v=tsL_JDtVbww http://v.youku.com/v_show/id_XNDcwMDgyOTE2.html
[58] http://www.youtube.com/watch?v=aAhPaiajwDY http://v.youku.com/v_show/id_XNDQ2OTc0MjUy.html
[59] http://www.youtube.com/user/raywilliamjohnson
[60] http://www.youtube.com/watch?v=TQBMPDbqlvc
[61] http://www.youtube.com/watch?v=9bZkp7q19f0
---------------------------------------
更新竟然在Google Zeitgeist网页端还有彩蛋