在MacOS系统中使用OpenCV库(sandbox supported)

最近因工作需要研究图片格式转换相关的知识点,其中使用到OpenCV库(一个基于BSD许可(开源)发行的跨平台计算机视觉库,很强大)中的ssim(结构相似性)算法实现来计算两张图片的相似度,用以做图片转换前后的对比。因此需要在Xcode中配置OpenCV库并且能在沙盒下使用,这一过程花费了将近一天的工作时间才配置成功,由于网上大多数资料基本上都是在非沙盒条件下的配置教程,对我没有太多实质性的帮助,这也是写这篇博客的意义所在。

Read more

《人类简史》第一部分认知革命读书笔记

人类:只是一种普通的动物

一直以来,我和很多人一样以为地球同一时期只有一种人类且是独特于其他的物种之外的特殊物种,不然怎么会站在了食物链的顶端。现在我才知道这种想法是错误的,其实我们现代人即智人(human sepiens)只是人属的一种,就像豹属包括狮子,豹子等。人属也包括多个物种,只是现存的人种只有智人,就容易让人造成智人是唯一人种的假象。

Read more

几个典型的幸存者偏差现象

幸存者偏差,就是忽略了筛选条件,认为经过筛选的结果是随机产生的。

幸存者偏差的现象的普遍的存在于我们现实生活中的,我们往往容易以自己的生活环境和经历为出发点去看待一件事情,把看到的结果当成是普遍存在的结果。

最近网上有一个《假中国系列》恰好说明了幸存者偏差现象普遍存在且容易被我们忽视。下面一一列举其中的个例。

Read more

Where do we come from?

你的身体里的每一个原子都来自一颗爆炸了的恒星,形成你的左手的原子可能和形成你右手的原子来自不同的恒星。这是我所知的关于物理的最有诗意的事情:你们都是星尘。

—劳伦斯·克劳斯 《一颗原子的时空之旅》

上面这段文字是今天一个朋友给我的,很浪漫也很有诗意。同时,这段文字也引发了我的思考:我们从何而来?

Read more

剖析@synchronizd底层实现原理

@synchronizd是Objective-C中的一个语法糖,用于给某个对象加锁,因为使用起来简单方便,所以使用频率很高。然而,滥用@synchronizd很容易导致代码效率低下。本篇博客旨在结合@synchronizd底层实现源码并剖析其实现原理,这样可以更好的让我们在适合的情景使用@synchronizd。

Read more

JavaScript的this关键字

这是一篇翻译文章,原文地址*点击这里*。

JavaScript中一个常用的语法特征就是this关键字,同时这也是JavaScript最容易被误解和造成困惑的特征。this关键字的含义是什么且决定其含义的依据是什么?

这篇文章试着解开这个的疑惑并给出一个简单清晰的解释。

Read more

用复利思维来思考人生

今天看了一篇文章,名为《比勤奋更能决定人生的是复利思维》,里面谈及了复利思维带来的边际递增效应,并列举了诸如吴晓波和巴菲特等典型的成功案例。我并不完全认同文章中的观点和论据,但是文章所要表达的核心思想还是值得学习的,就是用复利思维来思考人生。

Read more

阅读的意义

阅读的意义是什么?这是我一直在思索的问题,也一直在寻找满意的答案。我觉得让我从厌恶读书变得有点喜欢读书的过程中,有两个关于读书意义的比喻对我影响很深。

Read more

Cocoa程序退出前发送HttpRequest请求

最近在视频投送项目中遇到一个奇葩问题,花费了一整天时间才得以解决。这个问题比较隐晦,值得记录一下。

根据功能需要,需要在cocoa程序退出前,发送一个关闭设备的指令,本质上就是post一个Http请求,用于中止当前出于投送状态的设备。

Read more