作者归档:vicalloy

[苍蝇一分钟的生命]向左走,向右走

在豆瓣上看到有朋友给这短片打出五分的高分,还将自己的签名给改了。

第一次看完时有些莫名的压抑。苍蝇在一分钟的生命中完成了所有的TODO-LIST,看似充实却也无趣。生活是一种体验,TODO-LIST只是生活的一部分,而不是全部。

上豆瓣翻看了些影评,发现大家对这短片的看法体现出两个极端,“励志”和“讽刺”。一花一世界,不同的看法折射出不同的人生观。

追寻梦想的同时不要被梦想所束缚,是我在看过短片后写的影评。不知你看过这短片后的体验会是怎样,是向左,还是向右。

追寻梦想的同时不要被梦想所束缚

如果这是一部单纯的励志短篇,我会毫不犹豫的打出低分。
人生或许没有任何意义,但既来之则安之。
生活或许平淡,但未知的未来多少还有少许的期待。

长长的TODO-LIST看似承载着所有的梦想,却是绑架了梦想。
在马不停蹄完成TODO-LIST的同时你是否可曾停下脚步好好欣赏这个世界。

追寻着梦想,不要被梦想所束缚。
在平淡的生活中追寻那偶尔出现的色彩。

附:

肉食者鄙,管理中的上下级矛盾

不少领导喜欢以亲民的姿态出现,但成功的不多。表面上其乐融融,逾越不了上下级关系的事实。上下级的关系决定了某些事情上不可能做到完全的平等。
古人云:”肉食者鄙,未能远谋”,一定程度上也可以理解为上下级间矛盾。
作为领导需要有一定的权威,但权威也常是上下级矛盾的来源。大家都不笨,为什么要听你的?

  • 专业方面的权威
    • 这里说的专业是一个很泛的概念,其中包括,技术能力、经历、以及管理者的人格魅力。下属认同管理者的看法和决策。
  • 职位方面的权威
    • 在某些时候专业性权威无法解决问题时就需要动用到职位的权威,即官大一品压死人。需要动用到职位权威,可能是认识不同,惰性,或其他方面的问题。不管是什么问题,职位权威都不应当经常用到。就如《Fate/Zero》中的令咒,虽然可以让对方强制服从,但副作用严重,用多了只能一拍两散。

道家主张的“小国寡民,无为而治”。按照我的理解就是,建立一个简单的规则,然后让各自自由的发挥自己的长处。

  • 要实现这个目标首先大方向一致,不然没有达成共识的可能,其他的事也就无从谈起。
  • 了解自己优势,知道自己擅长什么,哪些事情可以管,哪些事情需要放权。明确界限,尽量做到不踩线。
  • 另外就是自律。说永远比做容易,所以很多管理者都喜欢说。如果无法做大以身做责,则对他人的一切要求也都将变的没有说服力。

收到SAE的开发者证书了

前段时间SAE开始分发python的内测名额,一时手慢,错过机会。不过倒看到SAE可以申请开发者证书。申请资格中写有开源作者可以申请高级开发者证书。由于错过内测名额,所以就有啥拿啥吧。
感觉SAE的这次营销策划想法非常的好。可以花很少的钱就可以做到不错的推广效果,最重要的是还能得到一个皆大欢喜的结果。
PS:
申请一个SAE证书还是有些好处的。申请成高级开发者后,每年可以有¥1800的免费SAE资源可以使用。

完美的团队

37signals的伟大在于,他们本是一个“不求上进”的小公司,却在一定程度上改变了世界。他们创造的ROR在更新了人们对web开发的认识。他们出版的《rework》影响了广大的创业者,很多创业者都希望以37signals为模板来打造自己的团队。

要打造类似37signals的团队不容易,甚至不太现实,但毫无疑问的是37signals是一个迷人的团队。

有时在想一个完美的团队应当是怎么样的。

  1. 没有管理者,同时每个人都是管理者。
    1. rework?中提到每个人都得干活。团队本来就小,如果这时还有人专职指手画脚的指挥别人工作,那会是让人非常反感的。 团队的每个成员都应当主动的承担部分管理方面的工作。在重大决策上大家一起讨论达成共识。尽量保证每个重大决策都是团队的决定。
  2. 每个人都是"全才",同时也是某方面的专家。
    1. 每个人都需要对其他人的工作有充分的了解,在相互了解的基础上才能更有效的沟通,才能提出合理的建议。
    2. 成员间的技能互补,才能更有效的发挥团队的力量。在某些问题无法达成共识的时候,也可以由这方面的专家来做最终的拍板。

GVIM同VIM的区别

从我用vim以来就一直用的是gvim。gvim和vim的功能完全一样,但少量细节上的差别还是让我决定使用gvim。

  • 光标 vim下常规模式和插入模式下的光标都一个样,让我非常的不习惯。特别是在括号匹配的时候常让我不知道哪个才是光标。相比而言gvim编辑模式下的竖线光标则要直观的多。
  • 颜色 vim只能显示256色,gvim可显示的颜色则要丰富的多,因此gvim的代码高亮会比vim更好看些。
  • 菜单 可能是受windows的影响深远,部分时候我还是需要用到gvim的菜单。

合理的组织django的settings文件

django在一个项目的目录结构划分方面缺乏必要的规范,因此不同人的项目组织形式也千奇百怪,而且也很难说谁的做法就比较好。我根据自己的项目组织习惯,发布了一个项目dj-scaffold
前些天在reddit上为我的项目dj-scaffold打了个“广告”(见:http://redd.it/kw5d4)。不想评价甚糟,甚至差点被打成负分。其中更也人将这个项目说的一文不值。面对负面声音虽然会有些不爽,但其中的建设性意见还是需要听取的,至于那些纯属个人偏好部分就自动过滤了。
在谈及settings文件如何组织时,coderanger建议参考The Best (and Worst) of Django中的做法。文中的主要观点是开发环境和生产环境的配置都需要放到VCS中进行版本控制。参考文中的做法,我对settings模块做了部分调整。注:代码 https://github.com/vicalloy/dj-scaffold/tree/master/dj_scaffold/conf/prj/sites/settings

local_settings的弊病

为将项目的默认配置和本地配置区分开,最常用的做法是增加一个local_settings.py文件,并在settings文件的最后对该文件进行import。

try:
    from local_settings import *
except:
    pass

由此引发的问题是你不能对local_settings.py进行版本控制,部署环境的配置万一丢失将难以找回。

解决方案

针对该问题,建议的解决方案如下

合理的配置文件组织方式

|~settings/
| |-__init__.py
| |-base.py   #默认配置信息
| |-dev.py    #开发环境的配置
| |-local.sample    #本地的扩展配置在dev和production的最后进行import
| |-pre.sample    #设置当前使用的配置为生产环境还是开发环境
| `-production.py    #生产环境的配置

使用方式

DJANGO_SETTINGS_MODULE

django的admin脚本提供了settings参数用于指定当前使用的配置文件

django-admin.py shell --settings=settings.dev

在wsgi脚本中则可直接设置需要使用的settings

deploy.wsgi
os.environ['DJANGO_SETTINGS_MODULE'] = settings.production

简化参数
当然,如果每次使用django-admin.py的时候都要带上settings参数还是非常恼人,所以推荐的做法是在pre.py中配置自己所需要使用的配置文件。

SETTINGS = 'production' #dev

《时间简史》,换个角度看世界

在我看来对宇宙和时间的探索属于哲学的一部分。因为和哲学扯上了关系,所以本文的内容很乱。

跳出常识,换个角度看世界

花了几天时间,断断续续的将《时间简史》给看完了。坦白的说,量子物理学中那些自旋粒子的确有些将我搞晕。不过有时在想,这部分的理论或许并不是懂不的问题,真正的问题在于是是否愿意接受这个理论。就如日心说,并不是日心说有多复杂,只是对当时的人们而言这个理论太过激进,人们不愿意去接受这个事实。

我们总是喜欢习惯用自己固有的常识去理解世界。但是在进入更高一个层次的世界时,传统的常识往往都将“失效”,这时候我们需要利用新的理论来理解世界(古典力学->牛顿力学->相对论->量子论)。另一方面,在你接收新理论后,新理论也变成了你常识的一部分。对我们大多人而言,牛顿力学是常识,相对论和量子论还不是。

微观世界是一个足以颠覆我们所有常识的世界。在微观世界中的”物质“都同时表现出粒子和波的特性,这在我们日常生活中是无法找到相似物的。但我们总是很习惯的用自己的常识去理解微观世界,于是我们将原子解释为,电子绕着原子核运动,就如太阳系一样。

要想理解更高一个层次的理论就必须抛弃固有的常识去接受它。然而这毕竟不是一件容易的事,于是就有了”新理论被人们接受,不在于说服反对者,而是反对者的老去“这一说法。

深入本质

最伟大的理论都必须是简单的,如达尔文的进化论(适者生存),牛顿的万有引力定律(F=K*M1M2/R^2),爱因斯坦的能量公式(E=MC2)。如果一个理论还够简单,那是因为还不够接近本质,太多的噪声掩盖了真相。

所谓的本质其实是探索一切理所当然背后的东西。以前人们认为物体总是掉落到地上是理所当然,牛顿深入下去,于是发现了万有引力。

我有时会想到底什么是引力。两个物体间会有引力,不同电荷间也会有引力。引力看不见摸不着,但确实存在。到底是什么东西让两个看似相互完全无关的物体产生了联系。

到底什么是过去、现在、未来

曾一度在想到底什么是“现在”?“现在”的我为什么会是这个样子,这个年纪。当下次再思考“现在”这词的时候又是什么时候。

所谓的现在是和时间联系的动态。当你说现在的时候,所谓的现在已经成了过去。所谓的现在是一个动态的状态,如果将“现在”孤立的看则是一个没有任何意义的一个时间切片。

物理

一直觉得物理是门挺有意思的学科。在我看来物理属于一个混合学科,连接着理论(科学?)与常识。物理是一门功利性的学科,利用物理知识可以做出不少有趣的东西(小时候非常想)。同时在对宇宙的研究过程中,物理又同哲学扯上了关系。

超越光速之后的世界

CCTV报道了中微子超光速的新闻,还找了位专家讨论可能出现的时间旅行问题。 关于时间旅行,反正我是不信了。

相对论的理论基础是光速是不能超越的。 时间倒流有是基于相对论的。 如果相对论都不成立,那又何来的时光倒流? 光速未必不可超越,但光速却可能是人类所能接触到的极限。

超越光速后,时间将倒流?

相对论中提出时间是相对的,越接近光速,时间就越慢在无限接近光速时,时间将停止。于是很多人就想,如果超越了光速,那是不是时间就可以倒流了?听上去挺是这么一会事,其实完全没有根据。

A在跑步。

  1. 如果B静止,A相对B的速度为A的实际速度。
  2. 若B也在向前跑,则A相对B的速度为A-B的速度(时间变慢)。
  3. 若A、B的速度完全一致,则A相对B而言速度静止(时间静止)。
  4. 若B的速度比A快,则A相对B的速度为负。但不管这么样A也不可能会倒退回起点(时间倒流)。

超越光速之后的世界

每种理论都有自己的极限,要突破这层极限就需要有新的理论来进行支持。

  1. 在我看来牛顿力学是物理学的第一层极限,是人类在日常生活中可以接触到的力学极限。牛顿力学突破了这层极限,让我们可以很方便的分析日常生活中的力学原理。
  2. 爱因斯坦的相对论是继牛顿力学后的第二层极限。微观光速力学已经超越了人们的日常认识。说的玄一些,我觉的相对论是接近神之领域的理论。爱因斯坦相对论让我们可以解释微观光速的现象。
  3. 相对论的下一层理论即是超越光速后的世界,这或许会是我们永远无法涉及的神之领域。我们是通过各类的“物质”来了解世界。即使是光、能量都可以理解为物质。在超越光速后,我们对物质的理解可能都需要完全重构。

光速未必不可超越,但超光速的世界并不是相对论所能解释的。用相对论去YY时光倒流,就如用牛顿力学去YY近光速的世界一样,非常的扯。

黑客与画家读书笔记

目前比较火的一本书。书中认为程序员同艺术家们一样同为创造者。因为比较认同这个观点,所以对这书还比较感兴趣。读过后,感觉这书虽然没有期 望的好,却还是有些有意思的观点。

计算机科学?

计算机科学是个奇怪的说法,所谓到计算机科学其实是各类学科的一个大杂烩。

  • 数学家 类似冯•诺依曼这样的计算机理论学家,确切的说 他们更关心的是数学。只是研究的数学恰好是为计算机所用而已。
  • 计算机博物学家 某些人只研究计算机中到某一个极小到领域,然后在这个领域内做到极致。如某些人只做网络算法。
  • 黑客 黑客真正感兴趣的在于他们能做出来的东西。对他们而言,计算机犹就如画家的画笔。计算机只是将自己想法实体化的一个工具。

你希望自己成为其中的那一类?

作为一个”黑客“你需要多少计算机知识?

一个”黑客“对计算机理论知识的需求量和画家对颜料化学成分的了解程度差不多。简单的说,你只需要很少的计算机理论知识就可以了。

书中就点说的非常的简单,按照我的理解,书中到意见应当是不应当过于注重计算机的理论知识。相比深陷在细节中不能自拔,作为一个创造者更应当清楚 的知道自己在做什么,需要哪些知识。

犹如画家作画,程序的编写过程更象是一个涂鸦。画家们总是先将一副画的整体勾勒出来,再去做细节的刻画。程序也应当如此。你需要有了总体概念后才 知道如何动手,即使方向不对也能即使的修正。

我的计算机到我的数据的转换

这本书成书于2004年,作为第一代互联网公司的创始人,这书的作者还是非常有远见的。

反人月神话

按照人月神话的观点,人越多效率越低。若团队的每个成员都具备极高的素质,则可依靠极少的人创造出惊人的价值。

viaweb直到被yahoo收购的时候也只有3个人在维护。他们有招人,却只是为了能让公司卖个好价钱而已。招来的这些人也只是分配一些”闲活 “,干放着。

反人月神话-程序员工作效率的差别

做个不恰当到比喻,即使堆砌再多平庸到画家也无法画出蒙拉丽莎。优秀程序员和平庸程序员到差别也是如此。优秀程序员可以高效的完成任务,平庸的程 序员不但不能迅速到完成任务,甚至可能因为引入bug而带来麻烦。优秀程序员和平庸程序员直接效率的差别可能会超过100倍。

反人月神话-互联网创业项目需要多少人?(我自己扩展的)

有种说法,互联网创业项目的初期团队人数最好控制在2~3人,最多不应当超过5人。团队中设计1人,程序1~2人。有人或许会感到诧异,如此少的 人怎么可能做出优秀的产品。

  • 首先,如果你在一开始就希望把项目做的非常复杂,这个想法本身就是有问题到。
  • 其次,如果成员足够优秀,他们创造出的东西远比一对平庸团队的要多。
  • 另外,即使优秀的人才窝在大公司中也很难做到高效。

LISP

文中大量谈及LISP,相信会有不少人因为这书去学习LISP。作者认为编程语言是存在优劣的,哪些不优秀的东西都已经灭亡或将要灭亡。 JAVA就属于要灭亡的编程语言之一。 优秀的编程语言应当是精巧可再设计的。语言本身的规则非常的少,但借助这些规则你可以很方便的定义出自己的规则。 按照我的理解,作者的想法是,一个理想的编程语言可以让用户很方便的设计出适合自己应用场景的编程语言。

If I Could Tell You

曾有一段时间对New Age非常感兴趣,听了不少New Age。然而我一直没太听过雅尼这位New Age代表人物的音乐。或许是因为潜意识里会有几分叛逆的成分。想,太火的东西多半就俗了。

最近在虾米电台听到这首If I Could Tell You。非常优美的一首曲子。这曲子给人的感觉就如曲名一样,If I Could Tell You。心中纵有千言,却又不知如何说起,只能化为这曲低吟浅唱。