重读《一分钟经理人》

这本《一分钟经理人》不知是何时买的书,好像是大学里,放在我家很久,过年回家的时候又带来上海,最近闲暇的时候又回顾了一下。书很薄,32开,只有100多页。

令我惊讶的是,虽然书的内容几乎完全淡忘,但是书中阐述的道理似乎已经完全渗入我的思维之中,让我阅读的时候一直有戚戚焉。虽然我并不做管理,但是过去三年的工作,也让我意识到了工作中存在的管理问题。书中也若隐若现有一些GTD的方法以及敏捷开发的思想。让我隐隐感到一种符合我的哲学理念。

当然管理是关于人的问题,虽然书阐述了一些很简单的道理,但也并非总是适用于各种环境和背景——尤其是有中国特色的公司组织中。关键还是看人。对于书中描述那样高效的团队真是向往啊。

同时,今天正好看到这篇文章:哈佛经典:谁背上了猴子,也有类似的哲学在里面。

Programming in Erlang

上上周搬了家,把宽带迁了,借着青黄不接的几天不能上网的光景,看完了”Programming in Erlang“。

Erlang是一门面向并发和分布式的编程语言。Programming in Erlang以非常浅显的语言,介绍了Erlang的各个方面的基础,是一本合适的入门教材。作为入门教材,能够提到OTP的一些常用内容和常用的分布式设计的思想,已经非常不错了,加上书后的参考。我更感兴趣的是如何使用erlang来构建高并发、分布式系统,包括它的设计模式、部署模式等等,并没有在本书中涉及,非常关键的OTP、Mnesia也仅仅只涉及了一些基础。当然它还是给出了深入学习的途径。

看完了本书,加上翻阅了一些资料,我对Erlang有了更深入的了解,也纠正了一些错误概念:

过去曾认为Erlang就代表高并发,高并发就代表高性能,同时认为Erlang就只是高并发的代名词。其实,Erlang的并发性能也并非最强。首先Erlang的虚拟机是C写的,其次诸如Haskell、OCaml + JoCaml,以及Python的PyPy,其实都能提供不弱于Erlang的并发能力。

同时Erlang在顺序计算上的性能也不佳,甚至不能超过Python、Lua这类脚本语言(也许是和其本身的特殊性质有关)。所以就更落后于Haskell和OCaml这类可编译的语言。然而即使并发和并行也需要顺序计算,所以单从并发性能上来说,Erlang还不是最强的。

Erlang写的Yaws这个Web服务器,虽然能承受高并发,但性能,尤其是IO性能依然无法与lighttpd、nginx这种C写的Web服务相比——Erlang的虚拟机本身也是C写的。

同时,Erlang本身设计为一个结构化编程语言而非面向对象编程语言。这就令其较难应用更有开发效率的面向对象的项目开发流程和方法。

那么为何Erlang在并发、分布式编程中如此受推崇?我认为因为它本身是并发和并行在语义、处理上的一致,所以它编写此类程序更加方便。同时,它提供的是一个关于并发、并行以及分布式的统一的解决方案,而不仅仅是高并发。它的目的是构建有容错能力、有伸缩性的可靠系统,同时又能最简化编程工作。这就是它的真正的优势。

JavaScript高级程序设计

profession-javascript-cover.jpg

基本信息

  • 【英文名】Professional JavaScript for Web Developers
  • 【作者】Nicholas C. Zakas
  • 【译者】曹力 张欣
  • 【ISBN】7115152098
  • 【出版时间】2006-9-15
  • 【页码】670
  • 【原出版社】Wrox
  • 【简介】本书从最早期Netscape浏览器中的Javascript开始讲起,直到当前它对XML和Web服务的具体支持,展示了如何充分利用这种功能强大的语言开发自己的应用程序,以解决当今Web开发者面对的商业问题。
  • 活动主页

译者序

继续阅读“JavaScript高级程序设计”