Posted on 25-10-2017
Filed Under (技术) by waterlin
以前一直在 Windows 下用 Emacs,现在因为工作原因经常要切换到 Mac 下,但是在 Mac 下用 Emacs 的话,原来 Windows 下的 Emacs 配置不能直接适用,外加 Mac 的键盘实在是不适合用 Emacs,于是逐步放弃在 Mac 下用 Emacs 的想法。但是之前用 Emacs Org Mode 记录的一大堆笔记怎么办,不能在 Mac 下灵活的编辑这些文件,不能随时增、删、改笔记,对于我这种笔记狂人来说,实在是不方便、内心太痛苦了。
最近发现一个好东西,可以用 gollum 来编辑 org mode 文件,当然还支持很多其它的格式。
在 Mac 下安装很简单,可以直接这样安装:

如果需要编辑 org 文件,还需要额外安装 org-ruby:

安装好以后,到你想要记笔记 Wiki 的地方,创建一个 git 仓库,然后就可以开始愉快的写 Wiki 了:

如果需要编辑原来的 org 文件,只需要为这些文件创建一个 git 仓库,然后就可以在 gollum 上查看、编辑原来的 org mode 文件。
Wiki 永远都是整理知识的最好工具!用 gollum 写 Wiki 的好处是什么呢?
  • 一切变更,都有 git 来保存内容与版本更迭,不再担心一不小心把自己之前的工作成果弄没有了;
  • 一切都是开源,成本等于零,相信以后还会有更好用的工具;
  • 所有文件都是文本文件,不怕类似与 Evernote 或是 Onenote 这样的工具,万一哪天该公司倒闭了,怎么办?
  • 支持Markdown、Rst等常见格式,对 org mode 的格式支持很好;
  • 跨平台,可以在不同的平台用自己最喜欢的编辑器;
  • 提供网页编辑功能,很直观,方便整理文件。
补充在 Windows 下的安装 gollum 的步骤:
先安装 JRuby,在 Windows 下直接用安装包来安装。安装好 JRuby 后,再从 cmd 里进去安装 gem:
剩下的步骤,就和 Mac 下一样,继续从 cmd 里用 gem 命令安装 gollum 和 org-ruby,成功后就可以在 Windows 下正常使用 gollum 了。
如果在 Windows 下运行 Ruby 会提示类似找不到 ruby 服务器或是包的问题:
那就尝试多运行几次安装命令,一般就可以解决这个问题。
(0) Comments    (59) Views    Read More   
Posted on 15-02-2017
Filed Under (技术) by waterlin

Visual Studio 2015 可以作为Linux开发和调试的利器了,很好用,按这篇文章配好环境就可以开始愉快的编码了。

但是如果在这里用 CMake 来构建工程,可能要注意一下:

1. 需要把 cmake 工程文件设置为自动拷贝到服务器

vc-linux-cmake-1.png

2. 需要配置一个编译命令和路径,因为 VS 默认的工作目录和我们在Linux上时是不一样的

比如,针对 Debug 模式可以是这样的:

vs-linux-cmake-2.png

上面红线的内容是类似这样的:

针对 Release 模式是这样的:

vc-linux-cmake-3.png

上面红线的内容是类似这样的:

这样就可以用 cmake 来构建工程了,如果别人不用 Visual Studio,也同样可以用原来的 cmake 方法直接上 Linux 服务器去手动编译。

(0) Comments    (528) Views    Read More   
Posted on 25-01-2017
Filed Under (文化) by waterlin

2016因为工作家庭都比较安定,特意应老婆大人的要求,安排了好几场的演唱会,现在就来说说这些演唱会的观后感。

Eason’s LIFE演唱会,陈奕迅,2016年4月23日,佛山世纪莲体育中心

现场气氛一般,节目编排一般,场地太大音效不算很好。场地是足球场那种室外体育场,能坐很多人,但是因为场地太大以及开放环境,整体上感觉一般。现场气氛感觉一般,主要还是因为好多经典歌曲没唱,现场大家能跟唱的歌不多,导致现场气氛刚被一首歌点燃后马上又冷下来了,歌迷们都觉得不过瘾。

最后的返场演出,只唱了一首还是两首,气氛刚起来就没有然后了。

陈奕迅实力还是毋庸置疑的,只是感觉这个演唱会产品设计上不怎么对得起花大价钱的歌迷啊~~

637489768274587042

458946119327293452

【克不容缓】容祖儿李克勤中国巡回演唱会,李克勤、容祖儿,2016年6月25日,广州国际演艺中心

他们两个应该在一起搭档很久了,现场感觉配合很好、很有默契,现场的舞蹈和歌曲都编排得很好,我最喜欢其中的《合久必婚》和《月半小夜曲》。

因为舞台是两个人的,所以感觉比一个人唱更有意思,同时,也比那种跨年演唱会一大票人唱要好,毕竟焦点更集中,歌手会更有状态,节奏更好控制。

这场最爽的在最后返场的环节,一直在唱两人的经典歌曲,一下子唱了十几二十首,整个现场气氛都被持续点燃。

441329002183420178

534769361043190782

[A CLASSIC TOUR 学友·经典]世界巡回演唱会,张学友,2016年11月12日,广州国际演艺中心

无可挑剔的演唱会,不过从哪一方面来说!55岁的人了,唱出来还是像CD里出来的音质,现场也有唱破的一次,但我感觉更加真实,否则我真怀疑学友大叔是在放CD来忽悠我们的。

张学友演唱会的舞台设计是我最喜欢的,四面台设计,全方位无死角,并且我最喜欢他现场的灯光和灯泡设计,把整个城市的喧哗与热闹,和歌曲的意境融为一体,以最好的表现形式展现给了大家。

这场演唱会,我最喜欢开始的那三首吉他伴奏歌曲,现场的吉他伴奏,很好的发挥了学友大叔嗓音的特点,我就喜欢他唱慢歌。

返场的时候,同样也唱了十几二十首金曲,中间都不停顿的,全场歌迷是听得如痴如醉啊。

可能是因为学友的经典歌曲太多了,听完他这场演唱会,感觉意犹未尽一点都不觉得无聊,怎么这么快就结束了?感觉和没有听一样啊,怎么刚开始就结束了?

190435676265788663

216734651598383360

2016年周杰伦地表最强世界巡回演唱会,周杰伦,两场,2016年7月23日,广州国际演艺中心,2017年1月14日,香港红磡体育馆

周杰伦的演唱会,舞台设计整体感觉一般,主要还是传统的舞台风格与造型,也没有什么特别的新意。但是,因为周杰伦的歌迷实在太多太疯狂了,周杰伦的好歌也实在太多了,现场简直就是KTV大合唱的感觉,各种疯狂的跟唱与尖叫声,这绝对是我今年看过演唱会里气氛最棒的了。

第一场是在广州看的,但是因为位置太靠后了,感觉不是很好;于是,淘宝上买了香港一场位置比较前的票,现场那个酸爽的感觉啊,感觉周杰伦就在我面前晃了一个晚上,哈。

我以前不能算是周杰伦的歌迷,他红起来的时候我已经快要大学毕业了,我喜欢他完全是受老婆大人的影响,才逐步关注他的Facebook、新闻、作品等。只能说他是所有男人学习的偶像,这么才华横溢的男人,再怎么努力向他学习都不过分。周杰伦的好歌实在太多了,歌迷对他的歌可能比他自己还熟悉,并且好多人都能不看歌词唱。到返场时候有一个环节是给歌迷点歌,这个环节看似简单,但估计没有几个歌手学得来,起码你的好歌要多吧,歌迷对你的歌要很熟悉吧,歌迷还得会唱吧,周杰伦恰好把这几点都占全了。周杰伦本人也是非常幽默与风趣的,与歌迷互动的环节很贴心,希望下次也有机会让老婆大人参与到这个环节里。

555487587307483822

498684294401745569

总结

看了这么多场,说一说共有的观感:

1. 看演唱会,要尽量买前排的票,体验差别好大。不过这个好像是废话,能买得起、买得到前排的票的人,为什么要买后排的?

2. 看演唱会,尽量早点去、准时去,学友大叔做了一个很好的榜样,演唱会准时开始,没有拖延一分钟。这个守时的精神,不正好是中国人最缺乏的么?

3. 我没有想到,香港红磡体育馆这么小、这么破; 以前经常听那些艺人把在红磡体育馆开演唱会当做职业生涯的最高理想,以为红磡体育馆非常的富丽堂皇。去看过一场后,我理解这是为什么了,这应该是香港流行文化几十年沉淀的结果。比如周杰伦在返场的时候就以谭咏麟的“一生中最爱”开场,这就是在给老前辈致敬嘛!每天周杰伦在香港的演唱会都有香港明星到场捧场,这是在其他大陆地方看不到的。这个是香港现在文化上唯一的优势吧,希望大家在香港还具备这个优势前,都有机会去红磡体育场看看演唱会。另外,红磡体育馆竟然不用安检,香港对自己的治安太有信心了!

4. 演唱会也是一个产品,用心去开,歌迷能感觉到你的付出,这种感觉非常准,也很微妙。

5. 以后要尽量让我的小孩早一点接触这些音乐、体育的现场,先把眼界打开,才能知道,哦,原来世界也可以这样、可以更加丰富、更加立体,完全不只是电视上看到的那副冷冰冰的样子。

(0) Comments    (516) Views    Read More   
Posted on 18-01-2017
Filed Under (文化) by waterlin

接自《时间简史》第三章膨胀的宇宙58页,多看阅读出版。


在20年代,当天文学家开始观察其他星系中的恒星光谱时,他们发现了某些最奇异的现象:它们和我们的银河系一样具有吸收的特征线族,只是所有这些线族都向光谱的红端移动了同样的相对量。为了理解其含意,我们必须首先理解多普勒效应。正如我们已经看到的,可见光由电磁场的起伏或波动构成。光的波长(或者相邻波峰之间的距离)极其微小,约为0.0000004至0.0000008米。光的不同波长正是人眼看成不同颜色的东西,最长的波长出现在光谱的红端,而最短的波长在光谱的蓝端。现在想像在离开我们固定的距离处有一个光源——例如一颗恒星——以固定的波长发出光波。显然,我们接收到的波长和发射时的波长一样(星系的引力场没有强到足以对它产生明显的效应)。现在假定这恒星光源开始向我们运动。当光源发出第二个波峰时,它离开我们较近一些,这样两个波峰之间的距离比恒星静止时较小。这意味着,我们接收到的波的波长比恒星静止时较短。相应地,如果光源离开我们运动,我们接收的波的波长将较长。这意味着,当恒星离开我们而去时,它们的光谱向红端移动(红移),而当恒星趋近我们而来时,光谱则被蓝移。这个称作多普勒效应的频率和速度的关系是我们日常熟悉的。例如听一辆小汽车在路上驶过:当它趋近时,它的发动机的音调变高(对应于声波的短波长和高频率);当它经过我们身边而离开时,它的音调变低。光波或射电波的行为与之类似。警察就是利用多普勒效应的原理,靠测量射电波脉冲从车上反射回来的波长来测定车速。

(0) Comments    (429) Views    Read More   
FFMpeg 2.8 在 Visual Studio 2015 下使用时,提示了如下错误:
模块对于 SAFESEH 映像是不安全的。
错误详细信息如下:
严重性
代码
说明
项目
文件
禁止显示状态
错误
LNK2026
模块对于 SAFESEH 映像是不安全的。
MetaEncoder
E:\liumangxuxu\code\30kernel\VideoClipper\shadow\MetaEncoder\swscale.lib(dixcbs00009.o)
1
可以把 SAFESEH 这个选项关掉:
图像 1
把这个SAFESEH关掉。
说明:这个是 Visual Studio 2015 里引入的一个新东西,一般来说,旧版本的 Visual Studio 创建的库,在 2015 里要链接起来的时候,就会提示类似的问题。
如果是使用 cmake 来生成工程时,需要关闭 SAFESEH 这个选项,可以直接使用下面的代码:
IF(${_MACHINE_ARCH_FLAG} MATCHES X86)
  SET (CMAKE_EXE_LINKER_FLAGS “${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO”)
  SET (CMAKE_SHARED_LINKER_FLAGS “${CMAKE_SHARED_LINKER_FLAGS} /SAFESEH:NO”)
  SET (CMAKE_MODULE_LINKER_FLAGS “${CMAKE_MODULE_LINKER_FLAGS} /SAFESEH:NO”)
ENDIF()
Posted on 25-03-2016
Filed Under (技术) by waterlin

按如下步骤可以把旧电脑上的 Foxmail 客户端邮件存档迁移到新电脑上:

  1. 先把旧电脑上的 Foxmail 安装目录下的 Storage 目录下的数据拷贝出来备份一下;
  2. 在新电脑上安装好 Foxmail,然后设置好之前的邮箱服务器,并成功连接上;
  3. 在 Foxmail 能成功拉取邮件后,即可退出 Foxmail;
  4. 在 Storage 目录下,看一下是不是已经有了这个邮箱的文件夹了?把原来对应的邮箱文件夹拷贝到 Storage 目录里覆盖掉新的;
  5. 重新打开 Foxmail,应该就看到原来的邮件了。
(1) Comment    (677) Views    Read More   
Posted on 16-02-2016
Filed Under (文化) by waterlin

前前后后花了估计有一年半的时候,中间读读停停好几次,终于把多看阅读版本的《金瓶梅》看完了。随便写写自己的感想,顺便吐槽一下,多看阅读上的《金瓶梅》为啥有那么多字显示不出来呢?

  1. 对里面小脚女人实在描写太多。为什么中国古人会对小脚如此痴迷?这是一种病态的特征。现代人,已经迷恋于健美的身材。

    我觉得中国人身体素质一直不好,估计和妇女一直小脚有关。妇女无法行动自如,生的小孩,你觉得能强壮么?另外,中国文化就是喜欢安静的。

  2. 这本小说,语言表达能力极强。能把生活中的琐事,通过人物的对话表达得如此生动。这点语言功力,得让现在写网络小说的人好好学习一下。如果有好的小说情节,写起来当然可以吸引人。但是对于这种富裕家人的平常生活变化,能用语言生动的描述出来,需要很深的功力。就像你有山珍海味,要做一桌好菜,很容易,因为材料好嘛;但是你全是青菜豆腐,要让大家吃得流连忘返,估计得颇费一番功夫。
  3. 现代中国虽然技术上有着突飞猛进的地步。但是整个社会体系,依然如几百年前的宋朝明朝,办事情依然需要托关系,当官的自然比有钱的高一等。所以种种文化,依然没有丝毫变化。一部几百年前的生活百科全书,放到今天,依然适用,可悲可叹~~

    其中有关人情冷暖,男女感情之事,描述得太真实了,活脱脱一部心理学著作呀。

    这本书想看的人估计很多,可是真能看完的估计没几个,能从中读出味道的来的估计更加寥寥无几。抱着看黄色描写的人,估计要失望,整篇就没多少值得研究的内容,倒是批判现实主义的色彩比较浓厚。

  4. 这是一部普通人的历史,比起《水浒传》、《三国演义》,《金瓶梅》更讲的是日常人的生活。放心好了,这不是淫书,你想想多看上能下到的书,怎么可能会是色情的呢?就像《龙门镖局》里那个谁谁谁说的,这是研究明朝文化的经典文献啊,哈。
  5. 能把日常生活写成一部经典,也是牛叉。这就是像能把小葱伴豆腐做得比山珍海味更好吃,更加考验大厨的功力;就像能写出人工智能识别程序很牛逼,但是能写出一个Google一样的东西,更加造福人类。
  6. 语言很有特色,看过网上有不少模仿《金瓶梅》语言风格写的小段娱乐文字,真是大呼过瘾啊。

看到结局让人嘘嘘不已,估计又是一个轮回。当个小说看完后,不禁对里面的淫乱场面没啥好留恋的,更好看的反而是文字与情节,还有世态炎凉这种。

金瓶梅里的色情描写很重要,就像美国大片里的色情镜头一样,是作品的一部分,怎么可以剪掉呢?可惜啊,已经找不到完整版的《金瓶梅》了。

看完这本书后,激发起了我看《红楼梦》的兴趣了。诸君等我看完《红楼梦》再来写上一 笔。

(1) Comment    (679) Views    Read More   

在使用 CMake 来生成 OpenCV 的工程时,可以通过设置 OpenCV_DIR 这个环境变量来指定 OpenCV 的 OpenCVConfig.cmake 所在目录,从而实现对 OpenCV 的版本选择。这样,可以对同一套代码,灵活使用不同的 OpenCV 版本,同时不用去 Visual Studio 的工程属性里手动设置该版本对应的 include 和 library 目录

比如说,如果你要使用2.4.9版本,则可以使用下面的代码:

如果需要使用 2.4.3 版本,则只需要把上面代码里的目录修改掉重新 cmake 一把就可以了。

(0) Comments    (803) Views    Read More   
Posted on 18-11-2015
Filed Under (文化) by waterlin

最近看完了这本《费马大定理:一个困惑了世间智者358年的谜》,书翻译得很好,赞一下译者。

在我看来,这本书除了描述清楚了费马大定理的历史渊源以及相关证明求解的思维过程,最重要的是,教会了我们一直以来在数学教育中最缺乏的数学理念教育。本书对于大部分人来说,最有价值的地方在于简明扼要地论述了数学和一般科学(主要是指物理)的区别,直接引用书本里“绝对的证明”一节里的话:

费马大定理的故事以寻找遗失的证明为中心。数学证明比我们在日常用语中非正式使用的证明概念,甚至比物理学家或化学家所理解的证明概念都远为有力和严格。科学证明和数学证明之间的差别既是极细微的,又是很深奥的。这种差别是理解自毕达哥拉斯以来每个数学家的工作的关键点。

经典的数学证明的办法是从一系列公理、陈述出发,这些陈述有些可以是假定为真的,有些则是显然真的;然后通过逻辑论证,一步接一步,最后就可能得到某个结论。如果公理是正确的,逻辑也无缺陷,那么得到的结论将是不可否定的。这个结论就是一个定理。

数学证明依靠这个逻辑过程,而且一经证明就永远是对的。数学证明是绝对的。为了正确地判断这种证明的价值,应该将它们与比其差一些的同类证明,即科学证明做一比较。在科学中,一个假设被提出来用以解释某一物理现象。如果对物理现象的观察结果与这个假设相符,这就成为这个假设成立的证据。进一步,这个假设应该不仅能描述已知的现象,而且能预言其他现象的结果。可以做实验来测试这个假设的预言能力,如果它再次继续成功,那么就有更多的证据支持这个假设。最终,证据的数量可能达到压倒性的程度,于是这个假设被接受为一个科学理论。

科学理论的证明永远不可能达到数学定理的证明所具有的绝对程度:它仅仅是根据已得到的证据被认为是非常可能的。所谓的科学证明依赖于观察和理解力,这两者是容易出错的,并且仅仅提供了近似于真理的概念。正如伯特兰·罗素(Bertrand Rus-sell)指出的:“虽然这有点像是悖论,然而所有的精确科学都被近似性这个观念支配着。”甚至被人们最为普遍地接受的科学“证明”中也总有着一点儿可疑成分。有时候,这种怀疑会减少,尽管它永远不会完全消失;而在另一些场合,这种证明最终会被证实是错的。科学证明中的这个弱点导致用一种新的理论替代原来曾被认为是正确的理论的科学革命,这种新理论可能只是原有理论的进一步深化,也可能与原有理论完全相反。

接下来的一段结论:

科幻小说作家和未来学家阿瑟·C. 克拉克(Arthur C. Clarke)曾这样写道:如果一个有名望的教授说某事毫无疑问是正确的,那么有可能下一天它就被证明是错误的。科学证明有不可避免变化的不定和假冒。另一方面,数学证明是绝对的,无可怀疑的。毕达哥拉斯至死仍坚信他的这个在公元前500年是对的定理将永远是对的。

科学是按照评判系统来运转的。如果有足够多的证据证明一个理论“摆脱了一切合理的怀疑”,那么这个理论就被认为是对的。在另一方面,数学不依赖于来自容易出错的实验的证据,它立足于不会出错的逻辑。

本书最后“第八章 大统一数学”的“计算机证明”一节里,还有一段特别值得大家深思的话,在计算机使用越来越广泛的今天,下面这一段,永远值得刻在所有的码农脑子里:

这个奖到底是不是会被认领还是件有争议的事,但可以肯定的是计算机证明总不如传统证明那样发人深省,相比之下它显得空虚。数学证明不仅回答了问题,它还使人们对为什么答案应该如此有所理解。把问题送进一个黑匣子然后从另一端收到一个答案,这增加了知识但没有增进理解力。

看,只增加了知识,但是没有增进理解力!

Posted on 13-11-2015
Filed Under (技术) by waterlin

在 Android 中,要实现动画效果,要么通过循环调用 canvas.draw 系统方法,要么通过调用 Opengl ES 中的 GLSurfaceView.Renderer,通过实现方法 onDrawFrame 来进行绘制。

canvas 画图确实要简单得多,但要实现更好的性能最好还是调用 OpenGL 方法,因为它的性能相对来说要好一些。

实现动画的关键就是实现 GLSurfaceView.Renderer 接口内的方法,最重要的一个就是 onDrawFrame,这个方法的原理是 Android 系统会开起一个线程,在此线程内不断的调用 onDrawFrame,以实现动画效果。因此只要在 onDrawFrame 方法里实现你自己需要重复绘制的内容即可。

可以通过 GLSurfaceView 的 setRenderMode 这个方法来设置是通过其它地方的消息来刷新 onDrawFrame,抑或让系统自动刷新 onDrawFrame 这个函数。

在我的测试结果下,如果让系统自动调用 onDrawFrame 函数,会精确地 20 毫秒刷新一次。

另外,如果需要限制 onDrawFrame 的速度,可以在 onDrawFrame 函数里使用 Thread.Sleep 来延长一下线程的执行时间,不过这个时间需要精确计算一下才能达到控制一秒刷新若干帧的要求,需要考虑到当前线程周期里已经消耗的时间等因素。