最萌域名.cat背后的故事:加泰与西班牙政府的暗战
全世界的爱猫人士,恐怕都热切盼望能使用直接以“猫”的英文命名的域名,毫无疑问就是.cat。 然而,现在真正使用这个域名的却大多是与猫无关的网站,涵盖各行各业,并使用一种我们大多数人(包括我)看不懂的语言。 作为一个猫奴,你会发现自己不能随心所欲注册你的名字.cat ,而这是有原因的。我是在 2012 年亲身前往巴塞罗那,才知道了.cat域名背后的故事。
低噪声、高可扫读;标题、摘要、来源、标签一目了然。
采集自各技术站点的近期文章。
全世界的爱猫人士,恐怕都热切盼望能使用直接以“猫”的英文命名的域名,毫无疑问就是.cat。 然而,现在真正使用这个域名的却大多是与猫无关的网站,涵盖各行各业,并使用一种我们大多数人(包括我)看不懂的语言。 作为一个猫奴,你会发现自己不能随心所欲注册你的名字.cat ,而这是有原因的。我是在 2012 年亲身前往巴塞罗那,才知道了.cat域名背后的故事。
在大陆,任何一款手机面世前,都会在工信部登记入网,所以想提前一睹热门机型的配置的信息,都可以去工信部网站查询,本文以iPhone X为例,讲解三步查询过程。
智能手机带给人诸多方便,但是也有副作用,就是让人的注意力下降。微软公司在加拿大进行的一项研究显示,不论年龄、性别,人类的持续注意力从2000年时的平均12秒降至现在的8秒,而金鱼的专注力为9秒。
互联网和随之而来的移动互联网,让杀毒这件事情的云端化成为了主流,杀毒也从一个产品逐步地转变为一种服务,执着于软件的卡巴斯基遭遇滑铁卢或许并不让人感到奇怪。 但在那个时点,可能只有极少数的人意识到了这一点。
人脸识别经过近 40 年的发展,取得了很大的发展,涌现出了大量的识别算法。这些算法的涉及面非常广泛,包括模式识别、图像处理、计算机视觉、人工智能、统计学习、神经网络、小波分析、子空间理论和流形学习等众多学科。所以很难用一个统一的标准对这些算法进行分类。根据输入数据形式的不同可分为基于静态图像的人脸识别和基于视频图像的人脸识别。因为基于静态图像的人脸识别算法同样适用于基于视频图像的人脸识别,所以只有那些使用了时间信息的识别算法才属于基于视频图像的人脸识别算法。接下来分别介绍两类人脸识别算法中的一些重要的算法。
在前端开发工作中,除了项目开发保质保量上线以外,项目的数据监控也应该配套起来,确保线上的正常运转。如上报 pv 监控项目是否正常运转;测速上报反应项目质量;脚本错误监控作为监控中重要一环,当页面发生报错的时候,通过上报错误信息,能及时发现存在问题,修复优化、减少损失。 本文基于在手Q家校群前端脚本错误量优化的方案,致力于打造极致的脚本错误优化。 作为首篇,主要讲解基础的脚本错误监控和上报方式,以及常会遇到的 Script error. 的产生原因和处理方法。
React 的开发也已经有2年时间了,先从QQ的家校群,转成做互动直播,主要是花样直播这一块。切换过来的时候,业务非常繁忙,接手过来的业务比较凌乱,也没有任何组件复用可言。 为了提高开发效率,去年10月份也开始有意识地私下封装一些组件,并且于今年年初在项目组里发起了百日效率提升计划,其中就包含组件化开发这一块。 本文并不是要谈如何去写一个 React 组件,这一块已经有不少精彩的文章。例如像这篇《重新设计 React 组件库》,里面涉及一个组件设计的各方面,如粒度控制、接口设计、数据处理等等(不排除后续也写一篇介绍组件设计理念哈)。 本文关键词是三个,工程化、快速和可靠。我们是希望利用工程化手段去保障快速地开发可靠的组件,工程化是手段和工具,快速和可靠,是我们希望达到的目标。 前端工程化不外乎两点,规范和自动化。
在一台机器存不下1个业务所有缓存的时候,一般都会选择分片的策略(大多采用取模的办法),但有的时候缩减单个缓存对象的大小,也可以节省整个池子的资源: 1、一般情况之下,key的重复度很高,可以选择缩减key的长度; 2、在序列化的时候选择创建slim object,然后JSON.toJSONString(); 3、使用gz/br压缩JSONString (考虑平滑兼容多种压缩方式,使用第一个字节作为标志位);
Md2site是基于Omi的一款Markdown转网站工具,使用简单,生成的文件轻巧,功能强大。 当我们想把一堆markdown文档转成网站时,你可能有许多选择,倘若选择 md2site ,你一定会爱上她。
虽然系统越来越复杂,以及新分布式架构设计的思想普及,越来越多的系统采用了分布式的架构,特别是HTTP为交互方式的接口调用,移动端和PC端的并行对分布式架构带来了很大的推动。各式各样的服务接口,在处理业务流程之外有一些共性的问题,正视设计和解决这些问题,会大大提高程序的可用性,扩展性和可维护性。
哪怕到了最近几年,数据库被黑客完整下载的安全事件,也是层出不穷,程序员世界戏称为“脱裤”,好像光屁股一样羞耻。比如,刚过去不久的 CSDN,小米,多玩,等等事件都还历历在目。所以,程序员写代码决不能抱有侥幸心里,用户的密码,是最最隐私的东西,一定要妥善处理,一旦泄露,会给用户和服务网站都带来不可估量的损失。
什么是 HSTS? HSTS 是 HTTP Strict Transport Security 的缩写,字面意思就是“HTTP 严格传输安全”。在 2012 年 11 月发布了 RFC 文件。其实质,是通过服务器和浏览器配合起来,强制用户使用安全连接来访问服务器。 HSTS 大致原理是,服务器在 SSL 连接的网站请求返回中,带上一个响应头(Response Header)信息,要求浏览器使用强制安全,则在下一次用户访问此域名时,浏览器会自动探测用户是否使用了安全连接,如果没有的话,自动在浏览器端重设了 URL,通过安全连接来访问服务器。避免了用户通过不加密的协议与服务器进行通信。
由于存在线程本地内存和主内存的原因,再加上重排序,会导致多线程环境下存在可见性的问题。那么我们正确使用同步、锁的情况下,线程A修改了变量a何时对线程B可见? 我们无法就所有场景来规定某个线程修改的变量何时对其他线程可见,但是我们可以指定某些规则,这规则就是happens-before,从JDK 5 开始,JMM就使用happens-before的概念来阐述多线程之间的内存可见性。
在 Mac 系统下开发 PHP 的话,使用 MAMP Pro 来搭建环境是一个不错的选择,主要还是因为方便,一口气就可以拥有 PHP + MySQL + Nginx + Apache + PostgreSQL + Memcached + Ruby + Python + Perl,可以说 Web 开发的全部组件基本都涉及到了。 所使用 MAMP Pro 已经有两年的历史了,最新升级的这个版本,配合最新的 Mac OS Sierra 版本,遇到了一个十分奇怪的问题,如果在命令行下使用 php 命令的话,每次执行命令都会特别缓慢。
上个月,我在港大HKU SPACE中国商学院讲了一堂公开课,给我的命题是《营销的未来》,这个话题我说实话没什么好讲,因为我已经脱离Marketing一线太久了,很多年轻人比我做的好很多。为了那几个小时的课程,我专门请教了很多人,问他们关于这些年变化的看法,我还请教了我共事多年的同事杨桃(淘宝一千零一夜的主创),他们带给我的很多案例和思考,让我也能满满的讲完那门课,而且很多人站着听了几个小时没有走。
装饰模式,动态地给一个对象增加一些额外的职责 ( Responsibility ),就增加对象功能来说,装饰模式比生成子类实现更为灵活。
在执行程序时,为了提供性能,处理器和编译器常常会对指令进行重排序,但是不能随意重排序,不是你想怎么排序就怎么排序,它需要满足以下两个条件: 1、在单线程环境下不能改变程序运行的结果; 2、存在数据依赖关系的不允许重排序; 如果看过LZ上篇博客的就会知道,其实这两点可以归结于一点:无法通过happens-before原则推导出来的,JMM允许任意的排序。
通过happens-before原则和volatile的内存语义两个方向介绍volatile。
DCL,即Double Check Lock,中卫双重检查锁定。其实DCL很多人在单例模式中用过,LZ面试人的时候也要他们写过,但是有很多人都会写错。他们为什么会写错呢?其错误根源在哪里?有什么解决方案?下面就随LZ一起来分析。
看了下 git 记录,全年合并提交 1141 次,大部分工作还是跟重构相关。这是个跨了一年的坑,最后的结果还算凑合,不过过程中略失控,太漫长