#7 楼 @huacnlee 全部改掉了。 #8 楼 @kevin__liu 关于大网站,其实是一个怎么“优化”的话题,没有统一的方案,具体思路是通过架构调优和运用 cache 技术,以及利用 NoSQL 数据库的 scalability 能力提升单机的吞吐量,然后增加服务器通过集群的方式解决大访问量问题,这个在这个社区里面讨论的不多,但是 Google 的话,能找到很多资料。
我觉得我应该给 Rails 做一点点辩解。
关于 Rails 所说的 Convention over configuration(简称 COC)其实是有个界定范围的。
对于 Rails,我认为这个范围就限于 Framework 本身,是gem install rails安装的所有 gems。COC 给你最大的好处是节约时间,从而提升开发效率,我给你举个 Rails 框架内的例子,如果你要开始一个 Rails 项目,你是否需要先考虑用什么 template engine 呢?是 haml 好还是 slim 好呢?你是否需要先试用每个模板引擎后给出一个评测报告,然后你的团队根据你的评测来决定到底大家应该用那一个模板引擎?实际情况是不必,Rails 已经在 Framework 给你预置了ERB,虽然有人觉得 erb 不是最好的选择,但是 erb 却是一个非常不错的 start point,你可以在将来根据具体的需求来决定是否换用其他的模板引擎。同样的 COC 还表现在 ORM,Routing,代码组织结构,gems 加载顺序等等。Rails 给你在 90%以上的情况下都适用而不需额外去做技术选型的框架基础,让你将注意力集中在业务本身。
记得在 Rails 之前,如果要用 Java 开发一个 web 项目,光是技术选型,项目框架搭建和模块划分,就足以让开发团队讨论很久很久了。
以上是 Rails 框架范围内的 COC,那么 Rails 框架范围外的 COC 呢?Rails 并不要求你一定要用 Mac 或者 Linux,Rails 并不要求你具体用哪个 Editor,Rails 同样也不直接给你“网站部署方面和整体架构方法”的 COC,怎么办呢?我们有社区啊,Rails 的 COC 其实一直在影响整个社区,比如什么系统最适合开发 Rails?什么编辑器最好用?怎么部署才是最佳实践,已经有了这么多的讨论,只要你保持对社区的关注,那么你完全可以自己佐证出一套大家普遍接受采纳的方案,那么这个方案就是一个不错的 start point,比如你想找个 Editor,看到 Vim 和 Emacs 的讨论,而且如果两边的拥护一样多的话,你完全不需要观望直到大家有了个统一的结论说 Vim 一定就比 Emacs 或者反之,随便选一个都是 good start point。如果是部署方面,你如果就从 ruby-china.org 的部署方案本身开始,绝对是一个 excellent start point. 所以你的问题就请直接参照这个论坛的部署方案吧。
另外关于“大网站”的话题,除非你已经有了明确的需求和用户数量(这种情况其实很少,试问多人上来做个 Rails 网站就已经是个大网站的?)。网站都是慢慢积累用户,从小网站逐渐发展成大网站的,所以一开始就寻求 Rails 的大网站解决方案,思路是不对的,当你足够了解了 Rails 的开发和部署方面的知识,怎么应付大网站的访问量,以及架构方面的调整,是水到渠成的事情。
支持,据我所知,VMWare 能开出的薪水,很有竞争力。
谢谢分享,以前从不用 Enumerable#one? 方法,所以对这个方法不甚了解。
每次需要判断数组元素个数的时候,一直使用 #size 方法,而判断非 false(nil) 的时候,总是去 each 递归查找一遍。
如果懂硬件且资金紧张的话,可以自行去徐汇百脑汇攒一台,以前曾经在哪里赞过一台 2U 的服务器,托管在怒江机房。
#21 楼 @congteng 如果达成愿望,成为了一个程序员就是成功的话,我觉得我还在走向成功得路上,呵呵。
#19 楼 @ouyang 你这个提议让人诚惶诚恐啊!我简单看了一下《心智黑客》的大概内容,我理解这本书主要讲学习方面的一些原则,经验和实践,与之相反,我学习的过程跟这本书的主旨并不 match,我其实不是非常聪明的人,所以总是需要下很笨功夫,用比其他人更长的时间才能学到一些东西,相反,转行成为程序员这几年除了开始下决心的时候感觉相当艰难,后面的路越走越顺,而且总是遇到贵人,在经历的每一家公司,都有才华出众的同事给我很多帮助,让我少走很多弯路。在一开始就深度参与社区活动,积极表现,也让我得到了很多来自社区的各种机会,并结识了公司之外的很多非常好的朋友,所以我觉得我的学习这一方面非常不具有借鉴意义,反而我最应该作的是感恩。
学着楼主的帖子,说一下我的情况,我毕业一家普通的专科大学,在上海工作了三年,一直作数码印刷机设备维护和客户培训,在一家民营企业,工资大概在 3.5k 上下,做这一行很久了,感觉越来越倦怠,工作不是作产品的,更没有研发,每次销售拿下一个单子,或者客户那边满意度下降了,就叫我到客户哪里蹲点守着,直到现场问题都解决了,客户不抱怨了... 在这里基本就没有什么发展前途。自己对互联网这一块很有兴趣,自学了 ROR,但因为工作繁忙,没有多少时间来实际操作 ROR(借口?),目前水平还处在入门状态。这两天有种冲动,想换个跑道,看看有没有公司招要求不高的 ROR 实习生,但考虑到现实问题(没有任何编程经验,也自认不是这块料子,完全不相信自己真的能去写代码),非常苦恼是否应该这样做(当然也不知道上海有哪家公司愿意提供这样一个 ROR 实习生的工作机会),而且,当时也没有这样一个地方跟大家聊聊,呵呵... 这些事情发生在 07 年。
#13 楼 @franky_xhl 明天上海没有 RubyTuesday 活动,上次 RubyTuesday 活动上,跟大家统一了一下活动的时间安排和频率,大部分人觉得上海这边一个月两次的频率比较合适,所以上海这边的 RubyTuesday 安排在下下周。主题已经准备好了,先行预告一下,主题是关于EventMachine。
顺便祝杭州的朋友们明天活动开心。
谢谢 @ouyang, 这篇文章我一个晚上一直在反复阅读。
#73 楼 @jasonchi 是么?那么你怎么翻译convention over configuration?
#3 楼 @poshboytl 这本书很赞,我认为就是经典。这本书是 CoffeeScript 的 co-author 写的,不过这本书主要是针对 JavaScript 程序员的,而不是面向初学者。
敢问楼主看什么书学的 JavaScript?应用 JavaScript 到什么程度? 根据 CoffeeScript 作者自己的观点,他在 DocumentCloud 内部并不使用 CoffeeScript,因为对于一个没有 JavaScript 经验的人来说,CoffeeScript 无异于一门新语言,特别是新招聘的人。但是对于 JavaScript 老手,掌握 CoffeeScript,看官方首页自学也就是一个下午的事情。
我赞同!在这里,所有得节点都是问答节点,或者说整个论坛都是一个问答节点。
预告下,3 月 6 日没有 RubyTuesday 活动,下一次上海得 RubyTuesday 活动时间安排在 3 月 13 日。
赞,这个主题是我喜欢得话题!
大赞!
We push the China Ruby & Rails community forward!!