一百个星期

按照惯例,还是先来说两句天气。北京的天气,这两天又出现了严重雾霾,虽然今天白天天气晴的非常好,可以用万里无云来形容,但是据说昨天晚上有一架来自俄罗斯的飞机因为雾霾天气,无法在北京降落,在其上空盘旋了八圈,最终因为飞机上的油耗尽,被迫降落在天津……

今天中午出去吃饭,发现地面上已经出现一层落叶,冬天要来了,再一次不得不说,时间过的真是太快了。突然发现,今年的时间过的好快,以前从没有像今年一样,发觉时间过的如此快。

可能,我是说可能,是因为今年年初对于以后的发展方向有了一些确定性的想法吧。从而也发现自己要学的东西实在是太多了,时而会感到以前的几年光阴有点荒废的挫败感。不过还算庆幸的是,我没有选择逃避和自欺欺人,即便很多东西需要从零开始学。

好吧,还是少说一些带有负面情绪的话,除了把情绪搞得低落,浪费时间以外,半点儿用都没有。不太清楚从什么时候开始,对于抱怨非常的反感。很久以前如果有人冲我发牢骚抱怨,我一般会劝说他,抱怨其实是徒劳,倒不如想想应该如何应对更实际一些,但大多数时候,对方会认为我无法体谅他的难处而收场。后来当我意识到这一点之后,再碰到有人对我抱怨的时候,我选择安静的倾听对方的诉苦,虽然我很清楚,这对于我和他来说,其实是在浪费彼此的时间,毫无用处。但之所以现在会选择倾听,是因为我想明白了一个简单的道理,人与人在面对挫折和困境的时候,各自的反应是不同的。有人喜欢向他人倾诉,只不过我比较喜欢让自己安静下来,更理性的面对现实而已。

呵呵,扯得有点远。坦白说,上大学的时候,曾经有过很长一段时间,一直到毕业的一段时间,我自己也是经常满肚子的牢骚和抱怨。不幸的是,那个时候我却一直找不到人倾诉。时间久了,慢慢的发现,每次自我抱怨完了,事情该怎样还是怎样,没有半点儿好转,再后来,慢慢的,就变了。

嗯,话题转回来。

这个星期还是继续上个星期,在看《数据库系统概念》这本书。到目前为止,第八部分还剩下两章内容,第九部分介绍了四个常见的数据库,其中一个是 PostgreSQL,我打算大概看下,其它三个全是商业数据库,就不看了,主要是不感兴趣。实话的说,整本书看的过程很痛苦,几经无法继续读下去,很多篇章真的是硬着头皮读的,好痛苦,算是找回了点当初第一遍读《CSAPP》的感觉。好在在我读这本书之前,早就预料到这本书读一遍是绝对不可能完全搞懂的,至少对于我来说是这样的。所以虽然在读的过程中,一些篇章读的是云里雾里,好在已有心里准备,挫败感降低很多,实在读不懂的地方就先放过了,尽可能的不纠缠于细节。

其实,这本书的后半段,在讲完“事务”这一部分之后,除了随后对数据库系统的一个整体概述以外,剩下的章节对知识点讲解都很零散,而且各自成体系,都很独立,所以后半段给我的感觉知识点就非常的多,少了很多系统性的整体认识,很不连贯。这可能也是在读的过程中让我产生困惑的一个原因吧。不过,这本书是我必须要搞懂的一关。理解这些知识,需要时间,所以我也不会当前一直纠缠于此,随后我会边实践,边回头翻看这本书。虽然第一遍有很多知识点没有想的太明白,不过,这已经不妨碍我对数据库系统的整体框架有了一个大概的认识,至少我了解了一个常规数据库的知识边界在哪里。

除此之外,给 Vim 安装了两款插件,一款是关于 Go 语言的,名字叫 vim-go,另一款是针对大部分语言的智能提示的插件,简称 YCM。本来没打算考虑安装第二款 YCM 插件的,不但很庞大,而且第一眼看上去好复杂。不过后来还是装上了,当初有点较劲儿的感觉,越不好装我就偏要装。现在想想,保不齐哪天被我给卸载掉,因为装上这款插件之后,对于 Ruby 而言,之前装的 snippet 插件好像不管用了,目前还没有找到设置的机关在哪。说不定哪天心情不好我就会再把 YCM 卸载掉,嘻嘻!

最后想说,这篇文章是我连续第一百个星期的周记。最开始写的时候,从未预料到可以连续写一百个星期,唯一的想法就是想真实的记录自己的生活和想法,能够连续坚持一百个星期,从未打算过。不过,事实证明,如果我真的想做一件事情,至少我是可以坚持下来的。也许这个想法一开始听起来有些不靠谱,但只要符合常人逻辑,对我来说,还是有可能的。

“脑子笨,身体就得勤快一点儿。”这句话是我第一个老板给我的赠言。不忘初心!:)

稍作调整

想来想去,觉得这个星期不知道该写点儿什么。

还是先来说说天气吧。这个星期还不错,北京总算出现了几天好天气,真的是晴空万里,蓝蓝的天空,且没有一片云彩。美中不足,伴随晴天的还有不小的秋风吹过……但好景不长,周末这两天又出现雾霾天气,随手在网上搜了下全国空气质量,结果是大半个中国插满了黑色的小旗儿……雾霾天气直到现在尚未有退去的迹象。如果没有风的帮忙,想必还会停留数日吧。

上个星期决定翻看下《数据库系统概念》这本书。截止到目前为止,翻看了有不到一半的样子。不过对于常见数据库系统的功能模块划分,基本上做到心里有数了,接下来是“事务”这个比较大的子模块。再往后,接下来会从整体系统的角度描述数据库,以及特定数据库功能模块的讲解。全书的最后,会对一些常见的数据库做简要的介绍。对于这些典型数据库的挑选,我觉得有些疑惑,全书最后介绍了四个数据库,其中三个是大型商业数据库,只有一个是开源数据库,按理说,开源数据库应该讲解 MySQL 可能更与时俱进,但它却拿 PostgreSQL 做例子,虽然这正好符合我的胃口,但还是让我多少感到一些意外,可能是因为 PostgreSQL 之前待在学校的时间太久的缘故吧,形成了惯性,谁知道呢?

这本书看到现在,给我的整体感受是,数据库系统基本上可以划分成两个层次,上层属于逻辑层,下层属于物理层。对于上层逻辑层来说,如果是关系型数据库,其理论基础来自离散数学的集合论。下层物理层涉及到对数据的实际存储,主要是面向具体的存储设备。对于数据的具体存储,有两种主要的存储方式,一种是顺序存储方式,另一种常用的数据存储结构是B⁺树。

坦白说,虽然现在尚未读完这本书,但回头翻看之前看过的《PostgreSQL 数据库》,整体上对这本书的章节划分又多了几分理解。我可以比较清楚的知道,《PostgreSQL 数据库》这本书的哪几个章节其实可以归类到一个主题。我觉得,如果翻看完《数据库系统概念》这本书,基本上达到了我之前的预期,让我对数据库系统的整体架构以及各个模块的划分有了一个比较清晰的了解。

老实说,做这些功课,眼前看起来会和实际的应用相差较远。但我是觉得,如果我能更好掌握这些基础知识,对于以后快速理解和掌握多个应用层面的数据库会有更多的帮助。其实,学习一项新的技术,我总会有这种想法,那就是总想先去搞懂这项技术背后的原理,然后再去掌握具体的实际操作,我认为一旦理解了技术背后的原理,上层的实际操作无论怎样变动,心底总会是踏实的。这可能就是渴望对一项技术的复杂度进行掌控的另一种心理状态的具体体现吧。

在看《数据库系统概念》这本书之余,换换脑筋,在翻看另一本关于 Javascript 当中 DOM 编程的书,名字叫《Javascript DOM 编程艺术》。之所以当初选中这本书,其实主要还是出于对豆瓣的信赖。当前翻看完了前三章,单从第二章讲解 Javascript 语法来看,豆瓣上的评分有点过高了。不过也难说书的后面讲解的比较出彩也说不定,呵呵。只不过看到现在,尚未达到预期,:)

除了看书,这个星期 Apple 发布了新的 OS X 系统,对于发布会本身,其实没什么太多可以说的,相比于今年前两次的发布会,这次的发布会其实只是个小剧场,为的只是宣布一下之前没来得及说的新产品而已,几乎没有预料之外的东西可以说。

OS X 发布的当天我就把自己的 Mac 系统进行了升级。过程很顺利,Rails 开发环境没有受到任何影响,Homebrew 以及 Git 也没影响。只有 MacVim 受到了一些小影响,后来跑到Github 上看了下,原来在上一个 Mac 版本的时候,MacVim 更新过一次。随后下载下来替换成最新的 MacVim,然后一切就完美啦!

这个星期突发了一个想法,用 sketch 设计了一款棒球帽,是《棒球英豪》当中明清学园棒球队的球帽。

剧中上杉达也的角色是我看过所有动漫当中最为崇拜的一个人物。如果不出意外,以后也不会有任何角色在我心中与之相媲美。

加油啦!

生化武器

先来说说这周的天气吧,呵呵。这周天空中出现大规模杀伤性生化武器。印象中,一周下来,窗外一直保持着雾茫茫一片,平时也只有在早上的时候,会开窗透透气,流通一下室内的空气,之后会赶紧关闭。除此之外,因为暗无天日,几天不见阳光,空气也开始变的阴冷,室内除了冷以外,还带有一丝潮湿感。

这几年都会有出现几次雾霾,而每次的雾霾都要靠“吹”才能缓解。而每到此时,我就很向往海边……因为无法立刻到海边,所以也只能在网上看看海边……的图片。脚后跟也能想到,老家的空气质量常年领衔全国污染十大城市,所以肯定比北京还要烂。哎,为了经济发展真的是连命都不要了,真的是要拿几代人的生命健康来换。
好吧,说多了都是泪,说点别的。把上个礼拜留的一点儿《冒号课堂》看完了。没什么可多说的,这次重新读,有了比第一次更多的收获。相比第一次阅读,在编程范式方面,有了更多切实的体会。但还是有一些个别的思想一时无法领会,过两年回头再读,或许会有更多的体会。

了解一下 processing 这款工具。坦白说这是一款面向设计人员使用的开发工具,所以基于这款工具的编程模型也非常的简单,上手非常的容易。之所以想了解,最开始还是因为 Arduino。后来发现 processing 在图形设计方面,真的是蛮强大的。这款软件所触及到的领域不只是 Arduino 这种开源硬件,还可以用这款软件快速的进行原型的开发,开发生成的应用既可以是桌面应用,又可以是 javascript 的页面。对于生成的桌面应用,可以分别生成 Windows、Mac 以及 Linux 的原生应用。

这款软件上手不但简单,而且对于一些侧重于设计类的软件开发的效率非常高。我觉得,平时有一些小想法,做一些小工具,使用起来还是非常的便捷的。对于网页的图形设计,用这款软件做一些小设计也挺不错。说实话,自从前几天看过 Bret 的一则演讲视频《Stop Drawing Dead Fish》,我被触动到了。

我突然就觉得,专业的事情就应该交给专业的工具来完成。联想到之前他的一则演讲视频《The Future of Programming》,我想到《劝学》里的一句话,“君子生非异也,善假于物也。”我觉得这位牛人真的很会创造工具,然后用专业的工具去做专业的事情。

作为一名程序员,坦白说以前骨子里还是多少对图形化界面的工具瞧不上眼。尤其是转到 Vim 以后,更是对点点鼠标的事情有点不屑。但是现在,我知道我又犯了一个类似职业病的错误,就像是我之前写的那篇《职业病》一样,只不过那篇文章里说的是对人,现在说的是对物,仅此不同而已。就工具本身来说,只有合适和不合适,顺手不顺手,专业不专业。专业事情就应该交给专业的工具去完成,这才是最正确以及合理的做事方式。

基于这个认识的转变,我希望能在设计方面,熟练掌握一到两款相关的专业软件,以便能帮助自己在设计方面学习一些设计类的知识。除了日后能够辅助做一些界面设计类的工作以外,平时也可以用工具实现一些自己在设计方面的想法。坦白说,以后我不希望把自己局限在系统层,就像今年五一的时候读安藤忠雄的书的时候所想,我希望今后设计一些很cool的软件,但为了保证软件不能只是中看不中用,所以我需要从下往上做起。我觉得这跟设计建筑是类似的,外表装潢固然很重要,但也要保证建筑自身的质量,:)

除此之外,读了一本 Javascript 的书,名字叫《JavaScript语言精粹》。书的内容真的很不错,让我对 Javascript 这门语言的态度转变了很多,呵呵。书写的很简洁,正文部分正好一百页。按照书中所讲的规范,可以很容易的避免很多Javascript的坑,但很显然,这本书不是一本零基础编程入门的书,所以还是需要有一些编程基础,但不管怎么说,我很喜欢这本书,而且也开始不讨厌 Javascript 了,呵呵。这本书真是立功了。

另外,开始正儿八经的读《数据库系统概念》,要想把数据库搞定,这本书是入门。时间紧迫,加油了!

两本书没看完

先感慨一下,时间过的好快啊!上个星期还说十一怎么过,今天为止,基本上已经接近尾声…….

回顾一下,现在天气越来越冷了,躲在屋子里穿一件短袖已经感觉到冷了,即便晚上关上了窗户,还是会感到冷。俗话说一场秋雨一场寒,十一这两天下了两天雨,本来也已经是这个节气了,所以顺带温度感觉下降的也有点快。

这个星期把《一九八四》中文版本读完了。读的过程中并没有给我太多的震撼,似乎很多故事情节都在意料之中,无论过程多么的曲折。虽然是这么说,并不是因为故事情节本身不够挑动神经,而是因为前几天刚刚看过《动物庄园》,对于其中故事情节的转折,多少已经有了一些心理准备,所以才会没有给我太多的震撼。

对于书的内容,不想多说什么了。说多了很容易毁灭某些内心脆弱的同学,多年以来形成对伟大祖国的美好印象,以及对未来美好的憧憬,更多的还很有可能伤及他们的私人感情,从而让这些人产生无端的反感,结果却是适得其反。而对于我自己来说,其实是得不偿失。有兴趣的朋友,自己可以找来读一读,:)

关于这本书的英文版本,我还是想读一读。现在越来越觉得,英文阅读和写作水平,已经成为制约我以后职业发展的一个重要瓶颈。从获取最新技术角度来讲,现在越来越不能接受国内的二手中文资料,特别是一些实效性比较强的实用性技术。虽然对于移动互联网行业,现在国内有越来越多的热心人会第一时间进行翻译,但是翻译的质量一方面真的是不能保证,另一方面,也很有可能得不到日后的及时更新。而且,对于很多专业性比较强的资料,其实还是无人翻译的。真正需要学习这类资料的人大概分为两类,一类是英语还算有基础的人,直接就读了,没时间,也没动力翻译。另一类人一看是英文,基本上就退缩了……

试着读一些英文小说的想法,还有另外一个。那就是不想被局限于技术圈。想开阔一下自己的视野,业余时间也想参与一些英语环境的社交圈子。深入了解一些不同的文化,不同的观点,想来应该也是一件很有趣的事情。地球这么大,上面生活着形形色色的人,为什么非要把自己局限在这一亩三分地呢?

如今互联网如此开放,其实坐在家里就可以了解很多有趣的人和事。可能有人还是觉得离的有点远,讲一个我自己的八卦。大概在 2012 年圣诞节的时候,在 GTalk 上认识了一位外国朋友1,有趣的是,对方的母语是西班牙语2,我的母语自然是中文,但我们却用英语交流,而且想想就蛮好玩的。那个时候,我就觉得地球还真是蛮小的,世界其实挺大的,英语确实特么是国际通用语言!

因为对方生活在美国,有时差,所以平时几乎不怎么聊天,偶尔在 Twitter 和 Google plus 上会看到,圣诞节的时候,想起来了也会发个消息,问候一下。虽然聊天的次数没有几次,但也能了解一些有趣的文化背景。比如据她说自己是拉丁裔,全名非常的长,除了 first name 和 middle name,last name 本身还包括了两个名字,一个是 father’s last name,另一个是 mother’s last name,但平时都不直接叫名字,会有另外一个昵称。像类似于这种传统的文化,对于我这种土鳖来说,还是觉得蛮新鲜的,哈哈!

八卦到此为止,呵呵。言归正传,除了想长长见识,填补一下与异国人沟通的鸿沟以外,就是希望能够自由的表达。不用顾虑哪些中文是关键字,哪些中文是敏感词。哪些中文不能说,哪些中文需要拐弯抹角的说,哪些中文需要轻描淡写的说,哪些中文需要用拼音字母代替,哪些中文需要用拼音字母的简写代替。

最后一个想法,还是希望能够多了解一些真相,能够多听一听不同的声音。这年头儿,想活个明白其实并不是一件容易的事情,:)

关于这本书,扯的有点儿多了。最后还有一本没有读完的书,就是上个星期提到的那本《冒号课堂》。一句话,可能还是自己的功力不够吧。虽然是时隔几年重新读,还是有一些抽象的思想无法领会。但也有很多收获的地方,之前云里雾里的很多知识点,都已经能够理解了,很多时候一边看一边有一种醍醐灌顶的感觉,或许再过两年,回过头来重新读,可能会有进一步的理解和认识。还剩下两章内容没看,下周先看完吧……

关于读书,就说这么多。上个星期忘记记录一件事情,因为我想把 VPS 的服务降级,但 Linode 的 Tokyo 数据中心没有地方了,所以就迁移到了 Dallas。试用了一个星期,感觉还可以,虽然比不上日本。想想如果以后日本机房有地方了,还迁移回来,相对于国内来说,还是日本的网速快。嗯,到时候再看。

最后是锻炼身体,周末这两天,把一百个俯卧撑当中的第一次做的数量,从五十个提升到了六十个,有了一个小小的变动。

哦,最后要提一下,根据 cloudflare 上的页面统计显示,目前为止,我的博客被 Google 和 Baidu 两个搜索引擎的收录比为 7:1,我很满意,如果是 70:1 我就更满意了,:D

  1. 好吧,后来才知道,是一名女程序员
  2. 很久之后才知道,西班牙语在美国是第二大语言