Purported “iPhone 5” housing examined in hands-on video

By:  | Jun 7th, 2012 at 08:00AM

Apple iPhone 5 Case Video

A hands-on video of what is claimed to be the external housing for Apple’s next-generation iPhone has been published on YouTube. Cell phone parts retailer ETradeSupply managed to procure what it says is the unibody aluminum case Apple will use on what it refers to as the “iPhone 5,” which BGR expects to launch this fall. The iPhone casing appears identical to the housing that appeared in a number of leaked photos published by various websites last week. Visible in the video are a new, smaller port for a redesigned dock connector, a relocated headphone jack, new speaker grills and a taller design that will reportedly be home to a larger 4.08-inch display. The case appears to be significantly thinner than the housing found on the current iPhone 4S and iPhone 4, and the unit will supposedly make use of a new smaller SIM card. The full hands-on video can be seen below.

新形态的媒体力量

 来源: 极客公园从 Blogger 引发的自媒体浪潮,到 Twitter 为首的实时社交网络,互联网时代的到来,让新的媒体形态层出不穷。独立自媒体日渐流行、而传统媒体却似乎开始缓慢衰败。然而归根结底,媒体进化的目标依然是为了让信息能更有效、更迅速地传播到需要它的地方。社会化网络是否是媒体未来的必然方向?移动互联网、富媒体的进化会为未来的媒体带来什么?所谓的“新媒体”和传统媒体未来会有什么样的前景?

本期活动邀请到新媒体领域的优秀实践者们,与我们分享了他们在新形态媒体方面的尝试和思考。以下是嘉宾在现场的一些精彩观点:

安替 – 微博化时代的信息和权力

在 BBS 时代,信息地方分权、信息精英向上流动的特点,让其扮演了网络科举的作用,保持了一个社会的流动性。如果你是一个网络屌丝,但是你的确能写得一手好文章,在 BBS 年代,你很容易能进入中央级、南方媒体,或是北京的、上海的媒体,这个渠道是非常通畅的。这导致了中国的媒体社会、互联网社会是高度重合的,没有出现网络社会、媒体社会的区分。在中国,好的媒体记者都是网友、都是微博用户。

微博时代,我们有 3.5 亿网民,但四大微博服务器全部在北京,地方政府干涉微博内容,必须通过北京/中央监管部门、中央级PR公司、微博公司。微博时代是信息管理中央集权、信息权威高度中央化的时代。大 V 、新浪、中央政府之间是恩宠式的侍从关系,大 V 和微博的繁荣是对中央政府有利的。但微博对地方政府是个噩耗,因为他没有任何的方法救济自己,所以微博推动社会进步在地方政府这一级非常非常明显,他被迫透明化。

微博审查导致网民在信息多元情况下缺乏行动能力,更加愤怒犬儒:你每天得到的东西越来越多,看到的丑闻越来越多,你越来越愤怒,但是你不能行动,所以你会越来越犬儒。这导致社会进入一个中央可控的高度不稳定,微博时代成为一个中央级的媒体的时代。

方三文 – 从 i 美股到雪球

传统的媒体特点包括:第一、提供给用户的主要是信息的获取;第二、信息是由职业人生产的;第三、大家获取的信息是共性的。如果有一天这个东西发生了变化:一、内容的生产者变了,由职业的人生产内容变成了像在座的每一个人一样,用户生产内容;二、用户获取内容的方式变了,每个人看到自己的页面是不一样的;三、用户最主要的体验除了获取信息之外,还在跟其他用户互动,在生产内容;那么这个东西还是媒体吗?

“用户生产内容”(UGC)对传统的媒体的生产方式和链条是一个非常大的颠覆。UGC 的价值是非常动态的,一方面 UGC 内容的价值是高度个性化的,很可能这个内容对你很有用,但对他是垃圾;第二、UGC 的价值是变化的,用户最开始发的一个分享内容价值也许不是那么高,但通过其他用户参与讨论、不停的补充信息,这个东西变得非常有价值;第三、UGC 是碎片化的,作为一个网站,对这些信息内容要有积极重构利用的能力,才能从沙里面淘出金子来。

在微博、推特上生产的内容会像流水一样流走。但是对我们来说,雪球的用户生产了很多碎片化的内容,我们现在正在去重组这些内容,将其变成结构化、更有价值的东西。比如说你打开新东方的页面,关于其 VIE 的内容全部结构化在那里,用户可以基于这些内容,做出对这个公司的判断。

黄龙中 – 爱范儿微观新媒体

社交平台在快方面有先天的优势,而新媒体与互联网媒体很大的一个区别是,他天生就是与社交媒体绑定在一起的,我们认为其应该是一个独立的媒体。新媒体行业的从业人员会天生就对这个平台保持高度的关注,敏锐度非常高,他们会觉得,快的东西,是可以在这样一个社交平台上来发布的。

晚上 9—11 点应该算是传统媒体的一个低谷,实际上他们在排版,准备第二天报纸。但对互联网媒体来说,这应该算他的流量高峰期,因为很多人在一对多的看新闻,新媒体、或者说移动媒体、社交媒体上的东西出来之后,这个点应该算是一个互动的高峰期,只要你有好的话题。

微信是一个超级入口,想象一下如果你的手机直接开机直接进入微信的话,你有多少事情在里面是不能直接完成的?现在大概有 30%不可以,我们认为这个比例应该会越来越小。微信的用户是时刻在线的,媒体信息可以实时的到达一个真正在线的人,这是一个革命性的东西。

薛蛮子 – 新形态的媒体力量

只要你有过人之能,不在于你的背景,只要你在某个行业、某个专业有所长,能写出好文章,在微博上自然就会得到足够的关注。

在微博上看到的都是信息,很多都不是知识,更没有分析。因此时间一长,在深度阅读上、在成体系的内容上会存在问题。

媒体可能是一种组织形态,确保有一群人能相对持续稳定的生产质量相对不错的内容。单凭个人、自媒体可能会有一个问题:很容易干掉。

今后社交化的商业、社交化的广告都会有巨大的改变,手机带来的影响可能是最大的。手机对广告业有巨大的冲击作用,而手机对支付带来的便捷也是不可小觑的。我个人认为,移动互联网大潮最收益的就是电子商务。

对于新的媒体形态来说,不要一想就变成是看天下似的,其实在很多细分的领域,在你的圈子里,你会有机会。细分领域实际上是最被忽视的,是最可以深挖的东西,把一个事做到极致就很好了。

所有的媒体,包括微博也好,都有一个相当的纠错的作用。绝大多数老百姓是有他们的常识的,微博因此具有一定的自洁机制,当一个信息充分传播的时候,谣言、错误就会很容易被抛出来了。(文:极客公园

福建境内访问百度搜索出现Google香港页面

来源: 站长之家

站长之家8月23日晚间消息,23日晚多位网友微博称访问百度搜索时自动跳转至Google香港地址,网友惊呼“七夕夜,百度与Google终于在一起了”。

据站长之家了解,自23日晚19时30分左右起,有福建厦门地区的网友在访问百度搜索引擎时发现,原本应该出现百度首页的页面却出现了Google香港的内容。

微博上多名福建省电信用户发博称访问百度跳转至Google香港(站长之家配图)

随后,这一现象被福建省内的泉州、福州、龙岩等多个电信用户发现,并第一时间通过微博发布,有部分网友则在访问百度时出现了Google的404错误页。

根据观察,大部分网站使用的DNS地址多为福建电信DNS,218.85.152.99与218.85.157.99,网友戏称,打开百度变谷歌,牛郎织女共七夕。

网友提供的访问百度跳转至Google错误提示页截图

除福建境内的多数电信用户访问百度会出现Google香港网页以外,经站长之家记者测试与调查发现,其他地区用户暂无此现象,截至23日晚9时10分左右,福建用户访问百度均恢复正常。

目前尚不确定福建电信DNS是否遭劫持。

相约七夕 为爱点灯

哈佛开发DNA硬盘:1立方毫米存储704TB数据

来源: 新浪科技

新浪科技讯 北京时间8月21日早间消息,早期的研究已经可以把DNA做成电路或小工厂,但从没见过将DNA当做存储介质的。哈佛大学的研究人员却将这一梦想变成了现实。

这个由乔治·切齐(George Church)、瑟里拉姆·库苏里(Sriram Kosuri)和高原(Yuan Gao,音译)领导的团队可以将96比特数据存储到DNA链中。具体方法则是为腺嘌呤、鸟嘌呤、胞嘧啶和胸腺嘧啶分别赋予二进制值,随后通过微流体芯片对基因序列进行合成,从而使该序列的位置与相关数据集相匹配。

这项技术表面看起来似乎没有什么了不起,但用微观物质存储宏观数据却会达到意想不到的效果:1立方毫米即可存储704TB的数据,相当于数百个硬盘的容量。虽然这一成果令人振奋,但流程还很缓慢,因此不能存储对时效性要求较高的数据。另外,DNA中的细胞可能会破坏DNA链,所以不适合数据传输。

但无论如何,如此大的数据密度还是有望备份全人类的知识。不过,多数人的想法可能更加实际——什么时候能用可以承受的价格买到一块有机硬盘?(书聿)

CEO做什么其实是在传达一个信号

 来源: 36氪

站长之家Chinaz.com 配图

编者按:我们很荣幸请到百姓网创始人、CEO王建硕作为36氪的特约作者,王建硕写了十年博客,他的很多文章对创业者非常有启发,以后大家将可以在36氪上看到他的文章。这是他的博客,这里是他的新浪微博。今天晚上在大学街的意大利煎饼果子铺,我们几个人在聊Facebook的高管在做什么。几个细节引起了我的注意。CEO Zuck每年还是要Checkin一行代码的(显然这是一个象征性的动作),COO Sandberg每天都自己盯着解决几个用户的问题。这个小动作其实大有值得借鉴的地方。每个人做任何事情其实都有至少两部分的力量:一部分,我做完了这件事情;第二部分,我向其他人发送了一个信号,说明了些什么。在自己一个人干活的时候,前者或许更重要,而当一个领导者,后者的比重越来越大,甚至变成最重要的部分。

如果CEO在写代码,哪怕只是一行,这明确的传达了一个信号。显然一家公司不会因为一个人写的一行代码有实质性的变化,但这个信号是如此明确,就是技术对于这个公司是重要的。这种态度是组织需要的。

COO把头埋下来,每天哪怕只解决一个问题,这也是一个信号。显然在上万的问题中一个是如此渺小以至于不会有任何实质影响,但这个明确的信号是,我在乎用户。这个信号会被组织放大,变成整个组织的行为。

为什么这个信号如此重要呢?

第一个原因应该就是“认可”。人都需要被认可,自己写的代码,自己帮用户解决的问题,或者自己和用户的一个电话,内心里都希望有人可以认可。当公司里有人,尤其是CEO,愿意花时间去看一段代码,或者看一个问题,或者听一段电话,其实最重要的信号就是,这个工作很重要。没有人愿意感觉到自己的工作对于公司的成功没有贡献。这种认可可以通过一个小小的行动达到。上次和康俊会所的一个按摩师聊天,他说他们的最高奖励就是他们大老板会给获奖者亲自按脚一个小时。这是一个按脚出身的淳朴的CEO对这份工作的认可,其他人都能感知道。这也就是为什么很多做得很成功的企业都是创始人就是这个行业里出来的原因。一个蛋糕师虽然不比MBA更懂管理,但他开的面包店更懂得做面包的自豪感。

第二个原因是“抽样“。一旦CEO开始听电话,审核用户问题解决的纪录,或者看或写代码,这方面的工作就会暴露在CEO的眼下。这其实是一种敦促。虽然谁都知道自己做的部分被看到的可能性其实不大,但只要CEO在做这件事情,又有谁能确定自己的工作不被“抽到”呢?不做这件事情,可能性是零;做了,可能性就有了。人是感性动物,不区分可能性的大小的,而仅仅区分有或者没有这种可能性。这可能就解释了为什么没有人会去买不可能中奖的彩票却对哪怕可能性再小的彩票感兴趣,或者解释了为什么一个几千万人的城市里哪怕一起凶杀案会让所有人不安。一旦有了这种可能性,大家个工作状态的确会有改变。

在领导团队的时候,领导者可以用上百种细微的方式在散发着各种信号。这些细小的信号组成了一个团队只可意会不可言传的气质。传达什么信号,其实就是由这一件件小事情完成的。

文章来源:36氪

谷歌推出人体浏览器展示3D人体模型(图)

作者:书聿 | 出处:新浪科技

谷歌人体浏览器其实相当于一款针对人体推出的谷歌地球(Google Earth),可以对人体模型进行3D浏览。WebGL尚未进入主流浏览器,但是谷歌Chrome测试版、Safari和火狐都支持该技术。

谷歌人体浏览器

谷歌人体浏览器

  北京时间12月17日上午消息,谷歌刚刚推出了一款名为谷歌人体浏览器(Google Body Brower)实验项目,可以浏览3D人体模型。

谷歌人体浏览器其实相当于一款针对人体推出的谷歌地球(Google Earth),可以对人体模型进行3D浏览。

谷歌在WebGL Camp环境中展示了这款应用。WebGL是一种跨平台的低级3D图形API(应用编程接口),无需任何插件,即可将3D图形引入万维网。由于使用了HTML5 Canvas元素,因此不需要借助Flash、Java或其他图形插件来运行。

如果使用支持该技术的浏览器访问bodybrowser.googlelabs.com,便可以获得一个人体解剖学3D模型,还可以放大、缩小、旋转甚至搜索。

WebGL尚未进入主流浏览器,但是谷歌Chrome测试版、Safari和火狐都支持该技术。

使用兼容浏览器访问人体浏览器的主页时,便会看到一个人体模型,可以对皮肤、肌肉、组织和骨骼系统等多个视图层进行调节。当用户输入一个器官或骨骼名称时,还可以直接切换到对应的视图,并进行放大处理。用户可以自行启动或关闭标签,而且该应用还支持多点触控,因此可以通过多点触控板和多点触控鼠标进行操作。

业内人士认为,该应用不仅对于医疗行业有所帮助,相关学科的老师和学生也可以从中受益。(书聿)

Jquery瀑布流插件

瀑布流布局在目前貌似很火爆,具体的分析、原理、用到的知识等等可以看看以下几位牛人写的东西。

瀑布流布局浅析

浅谈个人在瀑布流网页的实现中遇到的问题和解决方法

折腾:瀑布流布局(基于多栏列表流体布局实现)

javascript 瀑布流各大瀑布流简析与建议

因为自己用jquery比较多,便萌生了把瀑布流做成插件的想法,图片就借用迅雷UED上的那些美图吧。

先看看Demo

把代码放出来吧

;(function($){
   var
   //参数
   setting={
      column_width:204,//列宽
       column_className:'waterfall_column',//列的类名
       column_space:10,//列间距
       cell_selector:'.cell',//要排列的砖块的选择器,限定在瀑布流的容器内
       img_selector:'img',//要加载的图片的选择器
       auto_imgHeight:true,//是否需要自动计算图片的高度
       fadein:true,//是否渐显载入
       fadein_speed:600,//渐显速率,单位毫秒
       insert_type:1, //砖块插入方式,1为插入最短那列,2为按序轮流插入
       getResource:function(index){ }  //获取动态资源函数,必须返回一个砖块元素集合,传入参数为加载的次数
   },
   //
   waterfall=$.waterfall={},
   $container=null;//容器
   waterfall.load_index=0, //加载次数
   $.fn.extend({
       waterfall:function(opt){
          opt=opt||{}; 
              setting=$.extend(setting,opt);
          $container=waterfall.$container=$(this);
          waterfall.$columns=creatColumn();
          render($(this).find(setting.cell_selector).detach(),false); //重排已存在元素时强制不渐显
          waterfall._scrollTimer2=null;
          $(window).bind('scroll',function(){
             clearTimeout(waterfall._scrollTimer2);
             waterfall._scrollTimer2=setTimeout(onScroll,300);
          });
          waterfall._scrollTimer3=null;
          $(window).bind('resize',function(){
             clearTimeout(waterfall._scrollTimer3);
             waterfall._scrollTimer3=setTimeout(onResize,300);
          });
       }
   });
   function creatColumn(){//创建列
           waterfall.column_num=calculateColumns();//列数
      //循环创建列
      var html='';
      for(var i=0;i<waterfall.column_num;i++){
         html+='<divjs plain" style="border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; background-image: none !important; background-attachment: initial !important; background-origin: initial !important; background-clip: initial !important; background-color: initial !important; border-top-width: 0px !important; border-right-width: 0px !important; border-bottom-width: 0px !important; border-left-width: 0px !important; border-style: initial !important; border-color: initial !important; border-image: initial !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; line-height: 2em !important; margin-top: 0px !important; margin-right: 0px !important; margin-bottom: 0px !important; margin-left: 0px !important; outline-width: 0px !important; outline-style: initial !important; outline-color: initial !important; overflow-x: visible !important; overflow-y: visible !important; padding-top: 0px !important; padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; position: static !important; right: auto !important; text-align: left !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; font-family: 'Courier New', Consolas, 'Bitstream Vera Sans Mono', Courier, monospace !important; font-weight: normal !important; font-style: normal !important; font-size: 12px !important; min-height: inherit !important; white-space: pre-wrap; color: rgb(0, 0, 0) !important; background-position: initial initial !important; background-repeat: initial initial !important; ">+setting.column_className+'" style="width:'+setting.column_width+'px; display:inline-block; *display:inline;zoom:1; margin-left:'+setting.column_space/2+'px;margin-right:'+setting.column_space/2+'px; vertical-align:top; overflow:hidden"></div>';
      }
      $container.prepend(html);//插入列
      return $('.'+setting.column_className,$container);//列集合
   }
   function calculateColumns(){//计算需要的列数
           var num=Math.floor(($container.innerWidth())/(setting.column_width+setting.column_space));
      if(num<1){ num=1; } //保证至少有一列
      return num;
   }
   function render(elements,fadein){//渲染元素
      if(!$(elements).length) return;//没有元素
      var $columns = waterfall.$columns;
      $(elements).each(function(i){                                    
          if(!setting.auto_imgHeight||setting.insert_type==2){//如果给出了图片高度,或者是按顺序插入,则不必等图片加载完就能计算列的高度了
             if(setting.insert_type==1){
                insert($(elements).eq(i),setting.fadein&&fadein);//插入元素
             }else if(setting.insert_type==2){
                insert2($(elements).eq(i),i,setting.fadein&&fadein);//插入元素  
             }
             return true;//continue
          }                    
          if($(this)[0].nodeName.toLowerCase()=='img'||$(this).find(setting.img_selector).length>0){//本身是图片或含有图片
              var image=new Image;
              var src=$(this)[0].nodeName.toLowerCase()=='img'?$(this).attr('src'):$(this).find(setting.img_selector).attr('src');
              image.onload=function(){//图片加载后才能自动计算出尺寸
                  image.onreadystatechange=null;
                  if(setting.insert_type==1){
                     insert($(elements).eq(i),setting.fadein&&fadein);//插入元素
                  }else if(setting.insert_type==2){
                     insert2($(elements).eq(i),i,setting.fadein&&fadein);//插入元素 
                  }
                  image=null;
              }
              image.onreadystatechange=function(){//处理IE等浏览器的缓存问题:图片缓存后不会再触发onload事件
                  if(image.readyState == "complete"){
                     image.onload=null;
                     if(setting.insert_type==1){
                        insert($(elements).eq(i),setting.fadein&&fadein);//插入元素
                     }else if(setting.insert_type==2){
                        insert2($(elements).eq(i),i,setting.fadein&&fadein);//插入元素  
                     }
                     image=null;
                  }
              }
              image.src=src;
          }else{//不用考虑图片加载
              if(setting.insert_type==1){
                 insert($(elements).eq(i),setting.fadein&&fadein);//插入元素
              }else if(setting.insert_type==2){
                 insert2($(elements).eq(i),i,setting.fadein&&fadein);//插入元素 
              }
          }                    
      });
   }
   function public_render(elem){//异步数据渲染接口函数      
       render(elem,true);
   }
   function insert($element,fadein){//把元素插入最短列
      if(fadein){//渐显
         $element.css('opacity',0).appendTo(waterfall.$columns.eq(calculateLowest())).fadeTo(setting.fadein_speed,1);
      }else{//不渐显
         $element.appendTo(waterfall.$columns.eq(calculateLowest()));
      }
   }
   function insert2($element,i,fadein){//按序轮流插入元素
      if(fadein){//渐显
         $element.css('opacity',0).appendTo(waterfall.$columns.eq(i%waterfall.column_num)).fadeTo(setting.fadein_speed,1);
      }else{//不渐显
         $element.appendTo(waterfall.$columns.eq(i%waterfall.column_num));
      }
   }
   function calculateLowest(){//计算最短的那列的索引
      var min=waterfall.$columns.eq(0).outerHeight(),min_key=0;
      waterfall.$columns.each(function(i){                        
         if($(this).outerHeight()<min){
            min=$(this).outerHeight();
            min_key=i;
         }                            
      });
      return min_key;
   }
   function getElements(){//获取资源
      $.waterfall.load_index++;
      return setting.getResource($.waterfall.load_index,public_render);
   }
   waterfall._scrollTimer=null;//延迟滚动加载计时器
   function onScroll(){//滚动加载
      clearTimeout(waterfall._scrollTimer);
      waterfall._scrollTimer=setTimeout(function(){
          var $lowest_column=waterfall.$columns.eq(calculateLowest());//最短列
          var bottom=$lowest_column.offset().top+$lowest_column.outerHeight();//最短列底部距离浏览器窗口顶部的距离
          var scrollTop=document.documentElement.scrollTop||document.body.scrollTop||0;//滚动条距离
          var windowHeight=document.documentElement.clientHeight||document.body.clientHeight||0;//窗口高度
          if(scrollTop>=bottom-windowHeight){
             render(getElements(),true);
          }
      },100);
   }
   function onResize(){//窗口缩放时重新排列
      if(calculateColumns()==waterfall.column_num) return; //列数未改变,不需要重排
      var $cells=waterfall.$container.find(setting.cell_selector);
      waterfall.$columns.remove();
      waterfall.$columns=creatColumn();
      render($cells,false); //重排已有元素时强制不渐显
   }
})(jQuery);

貌似把代码贴进来格式有点乱了,哎先不管了。上面的代码要是看不清可以在demo页直接查看源文件。

插件使用方法:

1
$(selector).waterfall(opt); //其中selector为瀑布流容器的选择器,opt为配置参数对象

所需的html结构:html结构可以就是一个空容器元素,如<div id=”container”></div>,里面的砖块元素通过动态加载进来。当然也可以预先放一些砖块进去,如demo页中的

<div id="container">
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_000.jpg" /><p>00</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_001.jpg" /><p>01</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_002.jpg" /><p>02</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_003.jpg" /><p>03</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_004.jpg" /><p>04</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_005.jpg" /><p>05</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_006.jpg" /><p>06</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_007.jpg" /><p>07</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_008.jpg" /><p>08</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_009.jpg" /><p>09</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_010.jpg" /><p>10</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_011.jpg" /><p>11</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_012.jpg" /><p>12</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_013.jpg" /><p>13</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_014.jpg" /><p>14</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_015.jpg" /><p>15</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_016.jpg" /><p>16</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_017.jpg" /><p>17</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_018.jpg" /><p>18</p></div>
    <div class="cell"><img src="http://cued.xunlei.com/demos/publ/img/P_019.jpg" /><p>19</p></div>
</div>

下面详细说下配置参数对象opt的各属性的作用及其默认值。

column_width:204  //瀑布流是由列组成的,该参数规定了每列的宽度,该参数会直接影响到瀑布流的列数

column_className:’waterfall_column’   //列的类名,便于自定义样式

column_space:10    //列与列之间的间距

cell_selector:’.cell’   //要排列的砖块的选择器,限定在瀑布流的容器内,即插件是通过这个选择器来获取砖块元素的,并且是在瀑布流的容器内来查找这个选择器匹配的元素。

img_selector:’img’  //要加载的图片的选择器。如果你的瀑布流要加载的砖块元素的主题内容是大小不固定的图片,则该参数就是这些图片的选择器,插件需要获取这些图片来进行计算。

auto_imgHeight:true  //是否需要自动计算图片的高度,如果图片的大小是固定的,则把该参数设为false吧

fadein:true  //是否渐显载入

fadein_speed:600  //渐显速率,单位毫秒

insert_type:1  //砖块插入方式,1为插入最短那列,2为按序轮流插入

getResource:function(index,render){ } //获取动态资源函数,必须返回一个砖块元素集合,传入的第一个参数index为已加载的次数,第二个参数为渲染函数,它可以接受一个砖头元素集合作为参数,如果是使用ajax加载数据,则得到数据后要手动调用该函数来进行渲染 。每次到达瀑布流底部时会自动触发该函数来加载更多资源。

 

吐槽时间:

瀑布流加载的内容一般都宽度相同,高度不同的图片,如果能预先知道图片的高度,那就简单多了,但如果不能,则必须等到图片加载后才能计算出图片的高度,这是瀑布流最烦人的地方,也正是因为这样,如果是那些不知道高度的图片,则插入的顺序可能会有些混乱,而且每次刷新顺序都不同,因为每张图片加载完成的先后顺序并不是固定的,也许这次这个快一点,下次那个快一点。所以如果图片高度事先不知道,则整个砖块的高度也会不知道,必须等砖块里的图片加载完成后才能算出砖块的高度。如果是这样但又想保证砖块的插入顺序,则建议使用按顺序轮流插入的方式插入砖块,即把insert_type参数设为2。因为是插件,所以要考虑使用简便,但使用起来越简便,插件内部就会越复杂,漏洞、bug也会增多,所以我会继续完善这个插件。

本插件支持IE6+、chrome、firefox、opera、safari等主流浏览器。

来源:http://www.cnblogs.com/2050/archive/2012/05/03/2480702.html

你必须非常努力,才能看起来毫不费力

心理悦读:

有一群人,他们积极自律,每天按计划行事,有条不紊;他们不张扬,把自己当成最卑微的小草,等待着人生开出花朵的那天。

他们早晨5点多起来健身,你在睡觉;7点开始享受丰盛的早餐,蛋白质维生素淀粉粗纤维样样俱全,为新的一天起了一个好头,当他们收拾妥当准备开始一整天的工作时,你还在睡觉;

他们用上午的高效时间完成了一个又一个任务,甚至发现的新的商机,发现了有可能给人生带来改观的机遇,当午餐时间临近,他们伸了伸腰,准备稍作休息,此时你终于起床。

他们的午餐不铺张浪费,却营养全面,他们有选择的进食,因为清楚的知道自己想要的是什么,而你也在起床之后但觉到了饿意,你早早的洗了把脸,甚至连牙都没刷,打开冰箱,拿出了昨晚跟朋友high过之后带回来的薯条以及可乐;

午睡之后,他们重新积极的投入工作,而你也终于吃饱喝足,坐在了电脑前。是的,你的一天开始了。

晚上回到家里,他们也打开了电脑,也许是为了完成白天没来得及做完的工作,也许是因为前两天刚报了一个网络课堂,此时你还沉浸在dota中,你发的贴子还不够有人气,你发现空老师又更新微薄了,电视剧里男女猪脚还没有最后在一起,作恶多端的女二号还没有得到应有的报应。

终 于,22点到了,他们停下了工作,或许去满满的书架上拿下了一本书,或许拿起了自己心爱的乐器打算练练手,或许已经上床睡觉。当然,睡之前他们会想一想, 自己在这一天都做了什么,有什么收获,又有什么教训。最后,他们又重新提醒了一下自己那个埋在内心深处的梦想,然后满意的睡去了。

此时的你还在等待升级,还在顶贴子,还在刷微薄,还在为了男一号女一号哭哭啼啼,你的一天才刚刚开始精彩。后半夜,你隐约感到了困意,依依不舍的关掉了电脑,身上已经很臭,你却懒得去洗一个澡。你走向了乱糟糟的床,钻进了肮脏的被窝,掏出了手机——是的,爪机党伤不起。

你隐约知道自己的身边有那么一群“他们”,可是你却没有办法实实在在的感受到他们的存在。直到有一天,你和“他/她”终于浪漫的相见了——

他 /她是老总,你是普通的打工仔;他/她是主任,你是弱爆了的小职员;他/她游历各国,念着你想念的大学,拍着你想拍的照片,过着你想过的生活,他/她各种 恣意的小清新,而你,是的,我知道你恨小清新,可是这又有什么关系?事实已经如此,你就是那个电脑荧光照射下的SB。

如果你再不改变的话 !

robots妙用,开启伪静态后禁止搜索引擎抓取动态页面

我的应用:

由于在正式环境中有个测试环境(主要是为了update更新准确性,减低直接部署到正式环境BUG风险)

在网站根目录下

测试环境:

echo -e “User-agent: *\nDisallow: /” >/data0/app/apache2-test/htdocs/lbs/robots.txt

正式环境:

echo -e “User-agent: *\nDisallow: /api/\nDisallow: /trd\\nDisallow: /test/\nAllow: /”>/data0/app/apache2/htdocs/lbs/robots.txt

robots妙用,开启伪静态后禁止搜索引擎抓取动态页面!

说之前还是先分析下静态、伪静态、动态的不同点

动态、静态、伪静态

静态网址:纯静态HTML文档,能使用filetype:htm 查询到的网页。

伪静态网址:使用 Rewrite 将动态网址进行重写,使动态网址看起来像静态网址。

现在很多的后台,充分考虑到SEO,支持URL的重写,链接中带关键词,且链接清晰明了。

动态网址:内容存于数据库中,根据要求显示内容,URL中以 ? # & 显示不同的参数,如:news.php?lang=cn&class=1&id=2。动态网址的会话标识(sid)和查询(query)参数,容易造成大量相同页面,有时蜘蛛进入了会进入死循环,出不来。所以到现在为止,蜘蛛还是不太喜欢动态的。

robots指令

在开启伪静态后,打开网址是显示的静态页面,google这样的搜索引擎,在抓取你网站的页面时,同样会抓取网站的静态页面和动态页面,这样会造成抓取大量内容重复的页面(我的网站就存在重复抓取,网址是http://www.hyledlighting.com)。

现在,我们可以只接在robots.txt文件里写入规则,禁止搜索引擎来抓取动态页面,动态页面都有一个共同的特征,就是在链接里会带有“?”这个问号的符号,具体的robots指令规则看下面:

User-agent: *
Disallow: /*?*

如果想只接接指定搜索引擎抓取指定类型文件,如html格式的静态页面,其规则看下面:

User-agent: *
Allow: .html$
Disallow: /

如果要禁止搜索引擎抓取你网站的所有页面,可以写入以下规则:

User-agent: *
Disallow: /

对于robots.txt文件的路径,应该在你网站的根目录中,写入规则有一个简便的捷径,登陆google网站管理员工具,只接在里面写入规则后,生成robots.txt文件即可。

以上主要是针对伪静态网站禁止抓取动态页面,robots.txt文件中的配置规则很多,具体可以查阅相关资料。

MemSQL:“世界上最快”的数据库

 来源: ITeye

近日,Eric Frenkiel(前Facebook员工)和Nikita Shamgunov(前微软SQL Server高级工程师)推出了MemSQL数据库,该数据库的目标旨在提高关系型数据库的运行速度。

MemSQL通过将数据放置在内存中,并将SQL语句翻译为C++,来达到查询执行最优化。这使得MemSQL以难以置信的速度写入和读取数据。Frenkiel称,MemSQL比磁盘型数据库的执行速度快了30倍。

MemSQL提供了一个关系型接口,你可以将通常存储在暂时媒介(缓存或键值存储)中的数据进行统一,并连同现有数据直接放置到数据库中。

除了速度快外,对于开发者来说,MemSQL的另一个优势是可以与MySQL很好地结合。从本质上讲,当磁盘中的MySQL数据需要更少的性能和更高的持久性时,MemSQL则扮演一个高性能内存层的角色。MemSQL使用一个SQL接口和MySQL API,这意味着开发者不必学习新的东西。

MemSQL项目主页:http://memsql.com/

文档:http://developers.memsql.com/docs/1b/

网站安全–站长成功路上的最严重的一道绊脚石

来源:a5团购

  运营一个成功的网站有很多要素,定位要做好、美工要优化、推广要到位、要时间的积累。曾经我以为,当这一切都具备的时候,我就成功了,但事实并非如此。

事情是这样的,从最初接触SEO开始,我就一直致力于自己一个商城网站的运营和建设,从2009年开始,差不多已经快3年时间了。一直坚持手工外链,坚持原创内容,也投入了大量精力,自己做客服。努力总有回报,随着百度更新,网站排名越来越好,流量也越来越多。最好的时候,百度指数1000的词,我做到了百度第三位。由于是来的精准流量,每天给我带来的销售额也是相当可观的。我也梦想着,年入30万马上就要实现了,非常欣喜。

但是好景不长,排名上去没到一个星期,网站莫名其妙打不开了。我气愤地去问空间商是怎么回事,答案如下:网站被DDOS攻击,已经关闭了。完全懵了,原本一直致力于网站优化、推广方面的研究,但对网路安全方面的内容却一无所知。突击学习了几天,才大致明白怎么回事情。好说歹说,让从空间商那边备份了网站数据,换了国内某知名IDC的空间,想这回安全性应该高一些了。

不过接下来的事情更令我手足无措,网站更换空间后,一开始几天运转正常,但没过几天,攻击又来了,虽然这次没有被关闭,但访问速度奇慢。原本PV/IP一直维持在5以上,现在一下子降到一点几。想必大部分客户是刚点开网页就关了。接下来,网站排名也掉了。而由于我使用的CMS被爆出有漏洞,居然还给挂上了黑链。真是屋漏偏逢连夜雨!万般无奈,我只好把一个盈利前景大好的网站转手卖了。

痛定思痛,我想这次教训对我以后的发展也是有帮助的。至少,通过这次实践,我明白了自己的模式是行得通的,同时,也了解到做网站不仅仅是推广,网络安全对于网站成功是至关重要的。前一阵的新闻相信大家都看到了,从去年底开始CSDN、51CTO、CNZZ、eNet、UUU9、YY语音、百合网、开心网、人人网、美空网、珍爱网等各大网站用户数据相继被破解,这些大站尚且如此,我们草根站长的小站被入侵实在太简单了。因此,多学习点网络安全防护知识,应对各种网络攻击。保障服务器、网站安全,防止被入侵、挂马非常必要。

WordPress添加文章形式

要让自己的博客支持更多的文章形式,需要在主题的functions.php文件中调用add_theme_surpport()方法。形式如下:

add_theme_support('post-formats', array( 'aside', 'gallery' ));

第一个参数指添加的是文章形式,第二个参数是要添加的文章形式数组。但是只调用这个方法并没有效果,还需要用到WordPress的 add_action()方法,add_action()方法可以将我们自定义的php函数钩入WordPress,相当于激活这个函数。具体代码如下:

add_action('after_setup_theme','custom_post_formats_setup');
    function custom_post_formats_setup(){
    add_theme_support( 'post-formats', array( 'chat', 'image', 'link', 'quote', 'status', 'video', 'audio' ) );
}

add_action()的第一个参数是用到的钩子,第二个参数是自定义方法的名称。

徐悲鸿的执著与叛逆

徐悲鸿的执著与叛逆

因其对于绘画艺术的执著,落魄的少年成长为一代美术大师;
因其卓越的艺术成就,中国美术史上深深地镌刻了他的名字;
因其对于爱情的叛逆与不妥协,他的人生经经化作一段传奇。
徐悲鸿的理想不止于画家,在山河破碎、民族危亡之时,他将画笔作为担当天下的工具,要用它挽救中国。时代需要易于理解、充满激情、鼓舞人心的艺术作品,他陆续创作出取材于历史或古代寓言的大幅绘画,借古喻今。
“每一个人的一生都应当给后代留下一些高尚有益的东西。”今天是徐悲鸿诞辰117周年,一起缅怀这位悲天悯人的“美术教父”。
感谢徐悲鸿纪念馆提供国画《群奔》。推送时间:2012.07.19

原生64Bit Chrome源码释出 可自行编译

给Linux用户一则好消息,原生64Bit的Google Chrome(Chromium)源代码已经出现在互联网上,喜欢折腾的朋友可以去这里下载,然后自己编译使用。对于普通人来说,就还是别折腾了吧,估计等几天就有官方编译好的版本了。编译的方法为:Chrome 64Bit start on linux

Setup your build for multiple architectures output directories

mv out out32
mkdir out64
ln -s out64 out

Re-run gyp to get 64 bit make files:

./tools/gyp/gyp -f make build/all.gyp -Dtarget_arch=x64

* If you’re building with gcc 4.4, you need to add -Dno_strict_aliasing=1 and -Dgcc_version=44 to the gyp line.

Build:

make -r -j6 chrome

来源:Chrome迷

Chrome源代码中首次出现扩展同步代码

chromi.org

相信很多人像笔者一样白天在单位用一个电脑,晚上回家又用另一个电脑,甚至还可能不是同一种操作系统。那么在这种情况下,我们会发现 Chrome/Chromium 的同步功能非常实用。从最初支持的书签同步,到现在可以同步很多东西,包括皮肤、自动填写以及偏好设置等等。唯一差的就是 Chrome 扩展的同步了,而且这也是用户最需要的一个同步功能。

Chrome源代码中首次出现扩展同步代码

然而,从最新的 Chrome 源代码来看,我们应该不需要等太久了。在今天更新的Chromium Revision 49234中,终于出现了有关扩展同步的代码。更让人兴奋的是,这些代码默认就处于启用状态,也就是意味着不需要通过命令行参数来开启这项功能。当然,目前也仅仅是出现了相关的代码而已,还不能使用。

Chrome源代码中首次出现扩展同步代码

  也就是说,目前要不就是没有完全开启这项功能,要不就是还不能良好的工作。这种情况其实也很正常,毕竟是第一次出现了相关的代码。

很显然 Chrome 的开发者已经在这方面投入工作了,其实从本质上来说同步扩展应该和同步皮肤差不多,毕竟都是.CRX 的文件结构,既然 Chrome 皮肤同步功能已经可以很好的工作了,那么加入扩展同步应该也不是太困难。

那么,什么时候才能在 Chrome Dev 分支使用扩展同步呢?让我们一起期待吧!

女人在床上最不应该干的几件事

山羊的摩羯


  你在床上最不应该干什么?我想大家看到这个标题会想入非非,你敢说不是吗?我想大多数会去想,这是很容易去关注的吧,在人们这种很好的是时候应该是大家去关注的,你想过不要干什么吗?那么就一起去了解一下吧……

  现今生活压力越来越大,女人需要爱自己多一点,在日常生活中要注意一些养生的小细节哟,今天给MM列举一下在床上不能做的五件事情。

  一、不要穿袜子

  不要穿袜子,非凡是在冬天,很多女人喜欢穿着双棉袜子睡觉,非凡是比较冷的地方,其实穿袜子睡觉并不比不穿袜子睡觉要来得暖和,假如说暖和了,想怕也只是心里作用而已,因为洗完澡过一会上床钻被窝相信绝对不会让你哆嗦到天明。

  很多女人血气不足,本质都会畏冷,假如好命嫁个好老公,你可以让他先上床把被窝暖好了等你,不穿袜子与他磨擦,相信要比穿上袜子与他磨擦来得愉快。没有谁喜欢隔靴搔痒的。

  二、不要化妆

  在床上切记不要带妆而睡,非凡行业的除外。因为化妆品对皮肤的影响是众人皆知的,长期以往,引起一系列问题,后果难以想象,但俺也相信再丑的女人上了脂粉后也必将容光焕发,轮廓鲜明的,但最好是不要通过脂粉让男人笑着上床,哭着下床,假如一觉醒来,男人发现身边的白雪公主变成恐龙,想怕以后你再上几斤脂粉,也难以填补你在他心中的阴影,影响最大的到头来还是自已,各位就掂量着轻重了。

  三、不要用枕头

  女人其实不用枕头在床上睡觉,一定程度上是可以有效减少皮肤松驰与细纹的产生,加之,我以为,假如一个女人习惯于在婚前自已睡时要垫枕头,婚后也一定要果断反对把个双人枕搬回家里放在床上。

  因为不用枕头睡不着也不怕,非枕不可的情况下,就枕老公的臂膀,钻到他怀里,枕着他的臂弯,感觉一定要比用枕头舒适得多。当然,还有不足以道的是,这更有利于增进夫妻感情与身体交流,肩膀宽厚,怀抱暖和,冬天暖洋洋。

  四、不要只穿内裤,不穿睡衣

  为什么这样说呢?其实简单,但这前提主要是因为个人认为,在床上肯定不穿内衣, (意指不戴XX),在这种情况下,假如光穿内裤,不穿睡衣,万一碰到个天灾人祸的,想跑也不及,年少青春的样子,总不能深夜发生意外时半裸奔吧。

  至于已婚女人,多穿一件睡衣总比全裸或只穿内裤的诱惑要大得多,多少留点神秘感,虽知男人的心态,有时越是朦胧,越是轻易让人产生渴望与冲动。以下的不说。

  五、不要扎起长发

  不要以任何形式扎起长发,自然的就是最美的,这不但有利于头部血液循环,影响睡眠的深度,进而影响皮肤的质量。一把秀丽的长发加上一条质感轻柔的睡裙,总会令人浮想蹁跹,无论是侧影,还是背影(只要你不是熊猫样的身材)都将风姿绰约,美态动人。

仅硬盘大小电脑问世:无CPU无内存无系统

  国内第一台无CPU、无内存、无系统的电脑主机在沪投产

一只与移动硬盘大小相仿的金属盒子,“身上”长着4个USB接口和电源、网络、耳麦、投影仪专用接口,只需连接上显示器、键盘、鼠标等外接设备并插上网线,轻轻点击登录窗口,熟悉的Windows界面即刻展现在显示器或投影屏幕上,开机启动时间几乎可以忽略不计……

经过上海科研人员的数年攻关,国内第一台无CPU、无内存、无系统的“零终端电脑主机”近日在沪问世,并于7月初投入量产。目前,上海黄金交易所已经“抛弃”掉笨重的PC主机,配置完成300台这样的“零终端电脑”,成为全国第一家进入云电脑办公时代的公共机构。

节电95%零电磁辐射

记者日前在上海金图信息科技有限公司看到,这台可以完全替代PC主机的“宝盒子”KT8000长12厘米、宽8厘米、高1.5厘米,只相当于两包香烟大小,重量只有80克,比便携式移动硬盘还轻。

“KT8000是目前世界上唯一真正做到无CPU、无内存、无系统的零终端电脑,盒子内只有一块高度集成的电脑芯片,而上网浏览、操作软件、编辑保存文件、播放视频等所有工作,都通过网线另一端强大的服务器软硬件系统来完成。”金图科技总裁宋代明表示,由于“宝盒子”将传统PC主机内的数据运算、管理程序、操作系统等全部“转移”到了基于云计算概念的远程服务器,办公桌上的电脑终端得以大幅度“瘦身”,电力消耗只有3.5瓦不到,是通常台式电脑的5%,以一家100人规模的办公企业测算,能源消耗只有独立主机方案的1/10,3年下来可节省5万元电费。

无CPU、无内存、无系统,对电脑使用者来说还意味着——让办公族头疼的开机等候时间长、电磁辐射、电脑病毒都一一迎刃而解。

初步上市约3000元

在沪问世的KT8000“零终端电脑”已通过中国质量认证中心的中国国家强制性产品认证,被中科院上海科技查新咨询中心认定为国际领先技术,并于7月初正式投入量产。

目前,一台“宝盒子”的市场价格约3000元左右,今年第三季度可望量产4500台,已具备年产10万台的生产能力。

家庭版“零终端电脑”也在研制中,有望明年年中面市,届时价格也会大幅降低,一台家庭用“宝盒子”不会超过1000元人民币

网站第三方社会化插件推荐

 来源: 卢松松博客

从评论系统到分享按钮,从智能推荐插件到社会化登陆,社会化插件已经入侵了网站的方方面面,我就推荐写适合个人网站使用的第三方社会化插件。
搜索引擎认为最有价值的(按先后顺序):

1:内容

2:社会化

3:用户体验

4:链接建设

5:SEO

这是从ZAC博客中分享的一个Bing人员总结的高度浓缩的SEO技术,其实适用于所有搜索引擎。由此可见社会化的重要性。

那么,既然知道了社会化分享的重要性,今天卢松松推荐的插件可以用过一张图来表明。

我们看到,如果网站全权使用第三方社会化插件的话,除了网页基本框架和内容之外,其他功能都可以由插件来完成了。

1:分享插件

现在在各个网站上我们都能见到分享的按钮,目前Jiathis、bshare、百度分享这三款算是很火的分享按钮了。

下面的示意图可以说明分享按钮的作用,例如:通过用户A分享到他的微博下,这样他的粉丝就能看到该网站的内容,从而影响更多的人。

卢松松博客目前用的是Jiathis,因为它出是早,而且可分享的网站也非常多,而且在分享数据分析方面做的也很全面。Bshare还没用过,不过多评论了。

后起之秀,百度分享是很厉害,因为还不清楚百度的分享和它的收录、排名有什么关系,为了保险起见,许多站长都换成百度分享了,而且刷百度分享数的人也不在少数。

2:评论插件

第三方社会化评论系统我在之前的博文中已介绍过,目前评论插件有:评论啦、友言、贝米,和刚刚诞生的“多说”。

它们的功能大多类似,如上图所示,去处装上一段JS代码即可使用,比如社会化登陆、分享按钮、添加图片视频等等,在评论框中一应俱全。而且现在这些社会化评论系统已经支持SEO了,同时评论的数据也支持导入/导出了。

3:智能推荐插件

无觅是一个较早推出智能推荐插件的,我真正使用无觅这个插件还是在去年,因为之前Truman Lam给我推荐了好久。在加上他们的工具确实靠谱,所以我就用上了。智能推荐插件就是可以把同一个网站不同程序下的相关文章聚合到一起,主要是增加相关文 章精准度。同时无觅的“喜欢”功能就类似于分享按钮,可以把“喜欢”的文章推送到绑定的微博中,

友荐:和无觅一样的功能,不过部分还在内测中,它最大的特色就是JS代码只有一行。

需要注意的是友荐、友言已被Jiathis(加网)收购,从“分享按钮”到“智能推荐”再到“评论框”,Jiathis已经形成了一套完整的社会化插件体系。

同时Jiathis推出的趣一网的个性化阅读也与新版无觅网的个性化阅读形成了正面竞争。需要注意的是,只有你的博客安装了其中任何一方插件的用户才可能进入他们自家的热门排行榜,带来流量,二选一,你选吧。

写在最后:

分享按钮,可以让用户帮你推广网站;社会化评论框,可以提交评论、载入速度,方便管理评论;智能推荐插件,可以提高网站PV,增强用户黏性。

它们有很直接有优点,也有最大的缺点:你会发现网页中有一大堆第三方JS,牵一发则动全身。

作者:卢松松 本文地址:http://lusongsong.com/reed/436.html