1.
请用apidoc.com,google出来排第一的还真不一定是最好的。 如果你用textmate,查询快捷键 ctrl+h 非常方便。
2. 不太明白你的意思,我看出错后的backtrace log还是很清晰的啊。
3. Agile那本书是因为dhh有参与,所以算推荐,不能算官方书籍。官方的是网站上的guide,我个人觉得还是讲的挺清楚的。
4.不光是bdd的那套东西,实际使用中,你结合textmate的bundle snippet,无数简单易用的gem,程序写起来简直行云流水般痛快。话说我第一次用cucumber-rails写集成测试时,脑子里不停蹦出一句话,就是FUCKING AMAZING !
补充几点:
我原来使用python,写过一些pyqt的应用。后来学web编程,接触rails之后就完全转到ruby了。在我看来,python除了执行速度,再没有任何特性吸引我了。但你用解释性语言,则注定速度不是你的第一考虑重点。
针对你的问题:
1. ruby的block,第一次用还觉得有点python2.6之后的statement的感觉,用多了才发觉要灵活太多了。
2. 因为ruby的纯面向对象特性,所以你可以在rails里使用像 1.hour.ago, 2.days.from_now, 3.megabytes 这样的语句。
3. 再看看最新的rails 3.1引入的asset pipeline,默认支持 coffeescript 和 sass,你会感觉这就是一个总是走在最前沿,并且充满活力的社区。