我看你缺的不单单是 Rails、Ruby,而是对整个 Web 开发基础概念和工具的认知,也许你该看看这个https://getfullstack.com/ ——内网看起来可能有点慢,不过如果连翻墙都不会的话那就╮(╯▽╰)╭
Thanks again!
谢谢!那么在东京一般的地段买个房子要多少钱呢?300 万人民币够吗?如果用一个当地一般工程师十年的薪水在当地买房来度量的话。
兄弟你对日本很熟嘛,不过北京 IT 工资也不低啊,100 万年薪的资深工程师职位也不少,这部分人就算千分之一吧,每 10 万人就有 100 个,北京 IT 从业者没一百万也有几十万,这部分人绝对数字也不少,就此而言,东京行情如何呢?真心求教。
东京房屋租、售价格怎么样?
临时工?
EmberJS、React 和 Angular 的官方文档和初级 Tut 我都看过,打算择善而从:Angular 是最先让我吐的——我真受不了那种对 HTML 的扩展方式,抱歉,对那些 Angular 的爱好者,我实在受不了那个;React 初步看起来没啥大问题,不过真正的问题可能是:如果不用它的扩展语法、只用 JS 的话,代码写起来会比较啰嗦——换句话说,React 不鼓励用户直接使用 JS,至少从我角度看是这样——这个问题是个大问题:我既不喜欢一个框架把 HTML 扩充成一个种新的 XXML,也不喜欢用它发明一种新的编语言。在我看来,一个好的框架必须坚持 HTML 和 JS 的基本语法不动摇,任何试图强迫或者诱导用户使用一种新的编程语言进行开发的前端框架都是极端危险的。这样就剩下 EmberJS 了,不过 EmberJS 本身确实是优秀的,并不是因为我排除了它的两个对手才发掘了它。Discourse 就是一个例子——在很多方面,Discourse 都可以看作是 Rails 的旗舰应用,它有很多优秀的地方值得学习,每次看它的代码我都有新发现——也可能是我的 Rails 水准太 low 吧 不过我做 Ruby Web 开发 5 年多、总共开发经验 12+ 年,直觉还行。
Vim——Ruby 开发我一直用它,参见拙作:不用任何额外插件,把 VIM 配置成一个 IDE!
如果觉得 Rails 笨重,Sinatra+ActiveRecord 也是一个很好的选择,参见拙作:Sinatra + ActiveRecord = Really Lean Startup?
@holysoros 我更新了示例代码,并且新增了一节:Rails/Sinatra on Rack,欢迎斧正!
#1 楼 @holysoros 谢谢指正!
可以记录 IP,然后限制同一 IP 在一定时间段内的登录频率,比如一分钟不超过 3 次、一小时不超过 10 次,对于超过的 IP 予以限制,比如停止服务 1 小时,对于屡教不改的 IP,自动加入 IPTable 禁止访问。
如果觉得 Rails 顽固不如不用,Sinatra 就挺好,深度可配置,Rails 的组件 ActtiveRecord、ActiveSupport 什么的拿来用就好了,详见Sinatra + ActiveRecord = Really Lean Startup?
我用 Ruby 五年多了,Rails 是我最开始学习 Ruby 的理由,但我今天几乎不再开发 Rails 程序——我并不是说 Rails 没有用,或者 Ruby 不好,主要是因为 Rails 应用复杂度太高——虽然 Rails 功能丰富,但不都是我想要的,额外的功能引入的代码增加不必要的复杂度、降低了效率。
然而我今天还在用 Ruby 做 Web 开发,只是切换到了 Sinatra——它足够轻快、本身代码只有几千行,而且也是基于 Rack 的,这意味着它可以运行在一切 Rails 可以运行的环境下。同时,我并没有完全放弃 Rails——Rails 的主要组件,如 ActiveRecord 和 ActiveSupport 都是可以独立使用的。我也经常在我的 Sinatra 应用里引用它们——我觉得其实这是 Rails 乃至整个 Ruby 社区一个非常好的地方:那就是软件的可复用程度非常高,这得益于 Gems 体系,和 Rack 架构,当然还有 Rails 的良好设计。作为一个 Sinatra + ActiveSupport + MongoDB 的例子(广告):
对 Web 开发新手来说,我不建议从 Rails 开始,因为 Rails 实在是一门“易学难精”的框架,Rails Guide 很好,但如果天真的以为 Web 开发用 Rails 会那么简单,那么你就要用接下来的一年甚至更长的时间明白一个道理:这世上没有捷径、没有“银弹”,有的只是脚踏实地把所有的问题都搞清楚,不要妄想一个框架能给你什么你自身不具有的超能力。如果你对 Ruby Web 开发感兴趣,你应该从 Rack 开始,搞清楚 Rack 的原理,然后试试 Sinatra,如果你的业务需求真的复杂到必须用 Rails 不可,那么用它——在你搞清楚了 Rack、HTTP 和 RESTful 之后——这时你应该已经不是一个新手了。
我也建议创业公司或者小型机构:如果你们没有一个所谓 Rails 专家,就不要轻易尝试用 Rails 做产品开发,结果只能是陷入泥潭不能自拔。
楼主的经验和意见,我基本都赞同。我还想补充一点:要用好 Rails,你还得补补英文——要想在第一时间找到解决问题的办法,或者参考别人的、更多的 Rails 实践经验,国外的网站、社区是必不可少的。国内的 Ruby-China 也不错,可惜人气还是稍逊,毕竟国内 Ruby 程序员只算小众。
我已经烦死 Rails 了!