`
hax
  • 浏览: 951192 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
文章列表
大概去年这个时候 Swift 语言把 half-open range operator 从 .. 改为了 ..<,引起了一些讨论。 实际上..<运算符的最早先例是 Groovy 语言。   而Groovy在初创之时,使用的是和 Ruby 一样的 range operator(.. 和 ...),在2005年4月左右将 ...改为了 ..<。  
这一年来react和react native火得不行。 我对react其实一直有保留。单看应用框架,我其实更喜欢Angular 2一点。 但是react-style (css in js)秒杀了所有所谓css方法论。尽管我对react-style也仍有保留,但是我确实发现这方案和react是能很好的互相结合解决那些关键痛点的。 这两天我看了尚未release的relay和graphql的介绍,我估计这两个出来会大火!因为也是真解决了工程上的痛点。它做的事情其实好几年前我就想过,但是我只停留在想法,facebook真的实现出来,并且和整个react的体系是一体的。这就是架构能力和工程能力了, ...
最近做实时聊天,用到SharedWorker。目前为止,IE和Safari一直没有支持SharedWorker。过去可以认为是微软人品有问题,不过现在IE10、IE11在支持标准方面做得其实也不差。那么为什么IE不支持SharedWorker?我查了一下,发现这个2011年的讨论:http://lists.w3.org/Archives/Public/public-webapps/2011AprJun/thread.html#msg269。 简单说,微软的人认为SharedWorker存在隐私隐患。根据spec,如果两个不同域的网站都包含相同的第三方域在iframe中,这两个iframe可以发 ...
微软的Web工程师写了这篇文章Vendor Prefixes and JavaScript,文中写道: 引用In Internet Explorer, Microsoft Lowercase the first Letter, which makes it consistent with the CSS capitalisation: msTransform 然而ms这个拼法其实全然是 inconsistent。看看其他厂商的vendor prefix全部是首字母大写的(webkit同时支持大写和小写)。 所以我在该文之后留言: No! ms is wrong (AGAIN)!!! ...

短址域名选择

    博客分类:
  • MISC
什么是短址,请看 http://en.wikipedia.org/wiki/URL_shortening,不赘述。 如果你也要做一个短址服务,那么一件重要的事情是挑选域名。 短址域名的选择,当然第一得短。最早的短址服务tinyurl.com实际上长得很,后来出现的短址服务一般都只有6个字符,比如bit.ly等,这个长度的域名只要你花点心思还是不难以一般价格买到的,本人手里也有一个。 更短的5个字符的域名就不那么容易弄到了(因为大部分域名机构都保留1、2字母的域名),而最短的域名是4个字符,例如 g.cn ,但是就算你很有钱,没有门路也几乎注册不到。理论上还有可直接访问的顶级域名,但是绝大多 ...
【本文译自 Zeldman (作为前端工程师,不要告诉我你不知道他是谁)在2012年11月写的《IN DEFENSE OF DESCENDANT SELECTORS AND ID ELEMENTS》。】 除了偶尔更新下《Designing With Web Standards》,我这些年已经不再写关于CSS和HTML的具体实践和细节问题了。长江后浪推前浪——其他设计师和开发者接过了我的枪。在很大程度上,无论对他们还是对我们这个行业,这都是件好事。要说清楚代码那些事,最佳人选永远是那些每天花25小时沉浸其中的家伙——我也曾是如此。当像我这样的老家伙转向战略和管理角色(让我们有新的创新领域,也可 ...
本文是Dave Herman的《Static module resolution》一文的编译。Dave Herman是TC39的成员,ES6 module系统的champion。【ES6 spec太大了,所以分成许多可相对独立的特性集合,分别交给一个或几个主导人负责,TC39委员会则会定期开会进行审阅和讨 ...
刚刚改进了一下某个页面的图片lazyload功能。 原先是用jquery的lazyload插件的标准方式做的。有一个缺点是脚本不开启时图片都不显示了。 解决方法也不难,就是同时插一个noscript标签。lazyload插件官网给出的解决方案也是如此。 ...
There are many so-called "CSS frameworks" in the wild, some are even open source. But in general, I don't buy it. UI sample/guidelines VS codebase/implementation 1) As UI sample/guidelines, of course it's ok for internal usage,    but it's no value for share (open source). 2) As codebas ...
所谓裸对象,即 naked object ,是指没有原型(spec中以[[proto]]内建属性表示)的对象。 JavaScript是少见的采用原型继承的语言。访问一个对象的属性时,会首先看它自己的属性,所谓 own property 是也,如果找不到,则在其原型中查找,再找不到就继续找这个原型的原型,这就构成所谓的原型链。 原型继承提供了一种很独特的共享信息的方式,不过也带来一些有趣的问题。比如with构造。 我在2011年w3ctech广州的演讲中提到过with构造的问题,所以在strict模式中with就被禁用了。 其中一个问题是,with(obj)时,obj如果是你不可掌控的对象 ...

IE与Vary头

    博客分类:
  • MISC
这两天写Jedi时涉及到一个小问题。Jedi的可能特性之一是可为不同的UA自动输出不同的HTML/CSS等(比如当遇到html5新标签,对IE6~8输出带namespace的xml标签)。 但是如果不考虑一开始就根据UA来redirect到不同的URL,那么就意味着get同一 ...
这是一个老生常谈的问题了。我之前就曾经写过一篇blog记录了我对此问题的实践与思考之旅。最近在知乎上又出现了这方面的争论,而且几乎是一面倒的支持“总是写分号”。这让我深深觉得是时候正本清源,祛除迷信了。于是 ...
本文非关技术,只是最近装修的一段经历的记录。关注我技术文章的同志们请忽略本文。 选择意大利蜜蜂瓷砖,原本是老婆看中其设计的良好品味(相应的价钱也是非常可观,是市场上最贵的瓷砖之一)。可是在其红星美凯龙 ...
最近国内互联网巨头纷纷加入W3C,如百度、腾讯、360等。还有HTML5研究小组虽然是民间组织,但其实也代表了其企业成员如创新工场等。回想2003年W3C首次在中国举办的技术会议“中国国际万维网发展论坛”,当时参加者除了高等 ...
最近我多次提及module和trait。 粗看,我们可以发现它们有一定的相似处。两者其实都是为了组织代码单元,并在代码上施加更多的约束,且约束的方式有点类似。 目前典型的module是定义require和exports,即需要哪些包(所提供的类和函数),和输出哪些类和函数。 而trait是定义一组方法,并声明这些方法所依赖的方法(即require某些方法)。比如 IterationTrait 可定义 map, filter, reduce, reduceRight 等方法,并声明需要 forEach 方法。这也意味着前些方法内部可能是由forEach方法实现的。 如果看过Ruby语言的 ...
Global site tag (gtag.js) - Google Analytics